Examples of errors detected by the V3157 diagnostic
V3157. Suspicious division. Absolute value of the left operand is less than the right operand.
.NET 7
V3157 The 'year % 100' expression evaluates to the value of the left operand because its absolute value is less than the right operand. GregorianCalendarHelper.cs 536
public int ToFourDigitYear(int year, int twoDigitYearMax)
{
if (year < 0)
{
throw new ArgumentOutOfRangeException(nameof(year),
SR.ArgumentOutOfRange_NeedPosNum);
}
if (year < 100)
{
int y = year % 100; // <=
return (twoDigitYearMax / 100 - (y > twoDigitYearMax % 100 ? 1 : 0))
* 100 + y;
}
....
}