solidity/test/libsolidity/smtCheckerTests/operators/compound_sub_mapping.sol

16 lines
381 B
Solidity
Raw Normal View History

pragma experimental SMTChecker;
contract C
{
mapping (uint => uint) map;
function f(uint x, uint p) public {
require(x < 100);
2019-08-22 13:44:30 +00:00
map[p] = 200;
map[p] -= map[p] - x;
assert(map[p] >= 0);
assert(map[p] < 90);
}
}
// ----
// Warning 6328: (197-216): CHC: Assertion violation happens here.\nCounterexample:\n\nx = 99\np = 0\n\n\nTransaction trace:\nconstructor()\nf(99, 0)