3 description: "Virtual function declarations should specify only one of
4 `virtual`, `final`, or `override`"
7 extensions: ['cc', 'cpp', 'h', 'mm']
10 # This lint warns about:
12 # virtual void Bad1() final
13 # void Bad2() final override
14 # void Bad3() override final
16 # Caveats: This lint ...
18 # * Doesn't warn about `virtual void NotBad() override` at this time
19 # because there are currently 6963 instances of this pattern.
21 # * Doesn't warn about function declarations that span multiple lines
22 # because the regex can't match across line breaks.
24 # virtual ) final | final override | override final
25 payload: ^ *virtual .+\).+\bfinal\b|\bfinal +override\b|\boverride +final\b