| description | Learn more about: Arithmetic overflow: 'operator' operation produces a negative unsigned result at compile time | ||
|---|---|---|---|
| title | Warning C26454 | ||
| ms.date | 01/08/2017 | ||
| f1_keywords |
|
||
| helpviewer_keywords |
|
Arithmetic overflow: 'operator' operation produces a negative unsigned result at compile time
This warning indicates that the subtraction operation produces a negative result that was evaluated in an unsigned context, which can result in unintended overflows.
Code analysis name: RESULT_OF_ARITHMETIC_OPERATION_NEGATIVE_UNSIGNED
unsigned int negativeunsigned()
{
const unsigned int x = 1u - 2u; // C26454 reported here
return x;
}To correct this warning, use the following code:
unsigned int negativeunsigned()
{
const unsigned int x = 4294967295; // OK
return x;
}ES.106: Don't try to avoid negative values by using unsigned