solidity/test/libsolidity/smtCheckerTests/operators/compound_add_mapping.sol
2021-01-12 14:00:07 +01:00

16 lines
385 B
Solidity

pragma experimental SMTChecker;
contract C
{
mapping (uint => uint) map;
function f(uint x, uint p) public {
require(x < 100);
map[p] = 100;
map[p] += map[p] + x;
assert(map[p] < 300);
assert(map[p] < 110);
}
}
// ----
// Warning 6328: (198-218): CHC: Assertion violation happens here.\nCounterexample:\n\nx = 0\np = 38\n\nTransaction trace:\nC.constructor()\nC.f(0, 38)