aboutsummaryrefslogtreecommitdiffstats
path: root/test/libsolidity/smtCheckerTests/functions/functions_external_3.sol
blob: dd36ec7365a9dcb44fe267591ce95f8a6b2cde07 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
pragma experimental SMTChecker;

contract D
{
    function g(uint x) public;
}

contract C
{
    mapping (uint => uint) storageMap;
    function f(uint y, D d) public {
        mapping (uint => uint) storage map = storageMap;
        require(map[0] == map[1]);
        assert(map[0] == map[1]);
        d.g(y);
        // Storage knowledge is cleared after an external call.
        assert(map[0] == map[1]);
    }
}
// ----
// Warning: (146-149): Assertion checker does not yet support the type of this variable.
// Warning: (338-362): Assertion violation happens here