1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
contract B { uint immutable x = 3; function readX() internal view virtual returns(uint) { return x; } } contract C is B { constructor() { super.readX(); } function readX() internal pure override returns(uint) { return 1; } } // ----