[SMTChecker] Support delete

This commit is contained in:
Leonardo Alt
2019-05-06 18:32:10 +02:00
parent e99efec085
commit 2139c20776
8 changed files with 151 additions and 0 deletions
@@ -0,0 +1,27 @@
pragma experimental SMTChecker;
contract C
{
struct S
{
uint x;
}
function f(bool b) public {
S memory s;
s.x = 2;
if (b)
delete s;
else
delete s.x;
assert(s.x == 0);
}
}
// ----
// Warning: (73-192): Function state mutability can be restricted to pure
// Warning: (103-113): Assertion checker does not yet support the type of this variable.
// Warning: (117-120): Assertion checker does not yet support this expression.
// Warning: (117-124): Assertion checker does not yet implement such assignments.
// Warning: (165-168): Assertion checker does not yet support this expression.
// Warning: (158-168): Assertion checker does not yet implement "delete" for this expression.
// Warning: (179-182): Assertion checker does not yet support this expression.
// Warning: (172-188): Assertion violation happens here