solidity/test/libsolidity/smtCheckerTests/operators/mod_signed.sol
2020-11-24 16:36:55 +01:00

15 lines
392 B
Solidity

pragma experimental SMTChecker;
contract C {
function f(int x, int y) public pure {
require(y != 0);
require(x == 42);
int z1 = x % y;
int z2 = -x % y;
assert(z1 == -z2);
assert((x >= 0 && z1 >=0) || (x <= 0 && z1 <= 0));
}
}
// ----
// Warning 6328: (163-180): CHC: Assertion violation might happen here.
// Warning 7812: (163-180): BMC: Assertion violation might happen here.