Validate immutable variables

This commit is contained in:
Mathias Baumann
2020-04-02 13:52:27 +02:00
committed by chriseth
parent 9a8ca6ca33
commit ac7b31e559
56 changed files with 898 additions and 14 deletions
@@ -0,0 +1,21 @@
contract B {
uint immutable x;
constructor() readX public {
x = 3;
}
modifier readX() virtual {
_; f(3);
}
function f(uint a) internal pure {}
}
contract C is B {
modifier readX() override {
_; f(x);
}
}
// ----
// TypeError: (252-253): Immutable variables cannot be read during contract creation time, which means they cannot be read in the constructor or any function or modifier called from it.