solidity/test/libsolidity/smtCheckerTests/overflow/overflow_sum_signed.sol

18 lines
270 B
Solidity
Raw Normal View History

pragma experimental SMTChecker;
contract C
{
2020-12-16 17:32:34 +00:00
function f(int8 x) public pure {
x = 127;
2020-12-16 17:32:34 +00:00
int8 y;
unchecked { y = x + 1; }
assert(y == -128);
2020-12-16 17:32:34 +00:00
unchecked { y = x + 127; }
assert(y == -2);
x = -127;
2020-12-16 17:32:34 +00:00
unchecked { y = x + -127; }
assert(y == 2);
}
}
// ----