gecko-dev/tools/lint/cpp-virtual-final.yml

32 строки
1.0 KiB
YAML

---
cpp-virtual-final:
description: "Virtual function declarations should specify only one of
`virtual`, `final`, or `override`"
level: warning
include: ['.']
exclude:
# Third-party code with cpp-virtual-final warnings:
- gfx/angle
- gfx/skia
- media/webrtc/trunk
- security/sandbox/chromium
extensions: ['cpp', 'h', 'mm']
type: regex
#
# This lint warns about:
#
# virtual void Bad1() final
# void Bad2() final override
# void Bad3() override final
#
# Caveats: This lint ...
#
# * Doesn't warn about `virtual void NotBad() override` at this time
# because there are 8000+ instances.
#
# * Doesn't warn about function declarations that span multiple lines
# because the regex can't match across line breaks.
#
# virtual ) final | final override | override final
payload: ^ *virtual .+\).+\bfinal\b|\bfinal +override\b|\boverride +final\b