solidity/test/libsolidity/smtCheckerTests/array_members/array_push_string_literal.sol

18 lines
673 B
Solidity
Raw Normal View History

pragma experimental SMTChecker;
contract C {
bytes data;
function g() public {
require(data.length == 0);
data.push("b");
assert(data[0] == "b"); // should hold
assert(data[0] == "c"); // should fail
delete data;
data.push(hex"01");
assert(uint8(data[0]) == 1); // should hold
assert(uint8(data[0]) == 0); // should fail
}
}
// ----
// Warning 6328: (171-193): CHC: Assertion violation happens here.\nCounterexample:\ndata = [98]\n\nTransaction trace:\nC.constructor()\nState: data = []\nC.g()
// Warning 6328: (295-322): CHC: Assertion violation happens here.\nCounterexample:\ndata = [1]\n\nTransaction trace:\nC.constructor()\nState: data = []\nC.g()