2019-03-06 00:10:43 +00:00
|
|
|
pragma experimental SMTChecker;
|
2020-02-12 02:21:42 +00:00
|
|
|
pragma experimental ABIEncoderV2;
|
2019-03-06 00:10:43 +00:00
|
|
|
|
|
|
|
contract C
|
|
|
|
{
|
|
|
|
enum D { Left, Right }
|
|
|
|
struct S { uint x; D d; }
|
2020-02-12 02:21:42 +00:00
|
|
|
function f(S memory s) public pure {
|
2019-03-06 00:10:43 +00:00
|
|
|
s.d = D.Left;
|
|
|
|
assert(s.d == D.Left);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// ----
|
2020-02-12 02:21:42 +00:00
|
|
|
// Warning: (143-153): Assertion checker does not yet support the type of this variable.
|
|
|
|
// Warning: (171-174): Assertion checker does not yet support this expression.
|
|
|
|
// Warning: (171-172): Assertion checker does not yet implement type struct C.S memory
|
|
|
|
// Warning: (171-183): Assertion checker does not yet implement such assignments.
|
|
|
|
// Warning: (194-197): Assertion checker does not yet support this expression.
|
|
|
|
// Warning: (194-195): Assertion checker does not yet implement type struct C.S memory
|
|
|
|
// Warning: (187-208): Assertion violation happens here
|