Should hevm enforce freshness conditions on newly created symbolic addresses?
I am working with this example:
contract A {
uint public x;
constructor () {
x = 42;
}
}
contract B {
A a1;
A a2;
constructor() {
a1 = new A();
a2 = new A();
assert (address(a1) != address(a2));
}
}
Should hevm enforce freshness conditions on newly created symbolic addresses?
I am working with this example:
running
hevm symbolic --sig "B()" --code <the-creation-code>
returnsthe same happens with
--initial-storage Empty
.Removing the assertion results in
QED
.