Silence new Clang 21 trunk -Werror,-Wunnecessary-virtual-specifier

...in CompilerTest_compilerplugins_clang,

> [CPT] compilerplugins/clang/test/fragiledestructor.cxx
> error: 'expected-error' diagnostics expected but not seen:
>   File compilerplugins/clang/test/fragiledestructor.cxx Line 26 (directive at compilerplugins/clang/test/fragiledestructor.cxx:27): calling virtual method from destructor, either make the virtual method final, or make this class final [loplugin:fragiledestructor]
>   File compilerplugins/clang/test/fragiledestructor.cxx Line 53 (directive at compilerplugins/clang/test/fragiledestructor.cxx:54): calling virtual method from destructor, either make the virtual method final, or make this class final [loplugin:fragiledestructor]
> error: 'expected-error' diagnostics seen but not expected:
>   File compilerplugins/clang/test/fragiledestructor.cxx Line 39: virtual method 'f' is inside a 'final' class and can never be overridden
> error: 'expected-note' diagnostics expected but not seen:
>   File compilerplugins/clang/test/fragiledestructor.cxx Line 28 (directive at compilerplugins/clang/test/fragiledestructor.cxx:29): callee method here [loplugin:fragiledestructor]
>   File compilerplugins/clang/test/fragiledestructor.cxx Line 48 (directive at compilerplugins/clang/test/fragiledestructor.cxx:49): callee method here [loplugin:fragiledestructor]

Change-Id: Ie6484149b902e217a54b7b9423627e608d349d15
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185221
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
This commit is contained in:
Stephan Bergmann
2025-05-12 15:59:18 +02:00
parent 4727305dd2
commit 5b8f9514a3

View File

@ -36,6 +36,9 @@ namespace test3
class Foo final
{
~Foo() { f(); }
#if __has_warning("-Wunnecessary-virtual-specifier")
#pragma clang diagnostic ignored "-Wunnecessary-virtual-specifier"
#endif
virtual void f();
};
}