-
Notifications
You must be signed in to change notification settings - Fork 4
Gendarme.Rules.Correctness.ReviewCastOnIntegerMultiplicationRule(git)
Sebastien Pouliot edited this page Mar 2, 2011
·
1 revision
Assembly: Gendarme.Rules.Correctness
Version: git
This rule checks for integral multiply operations where the result is cast to a larger integral type. It's safer instead to cast an operand to the larger type to minimize the chance of overflow.
Bad example:
public long Bad (int a, int b)
{
// e.g. Bad (Int32.MaxInt, Int32.MaxInt) == 1
return a * b;
}
Good example:
public long Good (int a, int b)
{
// e.g. Good (Int32.MaxInt, Int32.MaxInt) == 4611686014132420609
return (long) a * b;
}
- This rule is available since Gendarme 2.2
You can browse the latest source code of this rule on github.com
Note that this page was autogenerated (3/17/2011 1:55:44 PM) based on the xmldoc
comments inside the rules source code and cannot be edited from this wiki.
Please report any documentation errors, typos or suggestions to the
Gendarme Mailing List. Thanks!