solidity/test/libsolidity/smtCheckerTests/overflow/underflow_sub_signed.sol
2020-12-30 12:14:30 +01:00

20 lines
310 B
Solidity

pragma experimental SMTChecker;
contract C
{
function f(int8 x) public pure returns (int8) {
x = -2;
int8 y;
unchecked { y = x - 127; }
assert(y == 127);
x = -128;
unchecked { y = x - 127; }
assert(y == 1);
x = 127;
unchecked { y = x - (-127); }
assert(y == -2);
return y;
}
}
// ----