1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
abstract contract A { modifier mod(uint a) virtual;} contract B is A { modifier mod(uint a) override { _; } } abstract contract C { modifier m virtual; function f() m public { } } contract D is C { modifier m override { _; } } // ----