2019-11-15 13:48:11 +00:00
|
|
|
pragma experimental SMTChecker;
|
|
|
|
contract C {
|
2020-09-24 09:32:56 +00:00
|
|
|
function f() public pure {
|
|
|
|
(uint a1, bytes32 b1, C c1) = abi.decode("abc", (uint, bytes32, C));
|
|
|
|
(uint a2, bytes32 b2, C c2) = abi.decode("abc", (uint, bytes32, C));
|
|
|
|
// False positive until abi.* are implemented as uninterpreted functions.
|
|
|
|
assert(a1 == a2);
|
|
|
|
assert(a1 != a2);
|
|
|
|
}
|
2019-11-15 13:48:11 +00:00
|
|
|
}
|
|
|
|
// ----
|
2020-09-24 09:32:56 +00:00
|
|
|
// Warning 2072: (85-95): Unused local variable.
|
|
|
|
// Warning 2072: (97-101): Unused local variable.
|
|
|
|
// Warning 2072: (156-166): Unused local variable.
|
|
|
|
// Warning 2072: (168-172): Unused local variable.
|
2020-11-02 14:56:48 +00:00
|
|
|
// Warning 8364: (139-140): Assertion checker does not yet implement type type(contract C)
|
|
|
|
// Warning 4588: (105-142): Assertion checker does not yet implement this type of function call.
|
|
|
|
// Warning 8364: (210-211): Assertion checker does not yet implement type type(contract C)
|
|
|
|
// Warning 4588: (176-213): Assertion checker does not yet implement this type of function call.
|
2020-09-25 17:09:06 +00:00
|
|
|
// Warning 6328: (293-309): CHC: Assertion violation happens here.
|
|
|
|
// Warning 6328: (313-329): CHC: Assertion violation happens here.
|
2020-09-24 09:32:56 +00:00
|
|
|
// Warning 8364: (139-140): Assertion checker does not yet implement type type(contract C)
|
|
|
|
// Warning 4588: (105-142): Assertion checker does not yet implement this type of function call.
|
|
|
|
// Warning 8364: (210-211): Assertion checker does not yet implement type type(contract C)
|
|
|
|
// Warning 4588: (176-213): Assertion checker does not yet implement this type of function call.
|