[clang] Warn about virtual methods in `final` classes (PR #131188)
Hans Wennborg via cfe-commits
cfe-commits at lists.llvm.org
Fri Mar 14 12:25:08 PDT 2025
================
@@ -2706,6 +2706,9 @@ def warn_final_dtor_non_final_class : Warning<
InGroup<FinalDtorNonFinalClass>;
def note_final_dtor_non_final_class_silence : Note<
"mark %0 as '%select{final|sealed}1' to silence this warning">;
+def warn_unnecessary_virtual_specifier : Warning<
+ "virtual method %0 is inside a 'final' class and can never be overridden">,
+ InGroup<WarnUnnecessaryVirtualSpecifier>, DefaultIgnore;
----------------
zmodem wrote:
Instead of DefaultIgnore, could we turn this on by default? I think it should be pretty high fidelity. Or at least we could put it in -Wall or -Wextra?
https://github.com/llvm/llvm-project/pull/131188
More information about the cfe-commits
mailing list