as it was planned for removal in clang 15 and we're now past the branch point
See https://github.com/llvm/llvm-project/issues/19107
Differential revision: https://reviews.llvm.org/D118762
Removed Compiler Flags
-------------------------
+- -Wweak-template-vtables, which was deprecated in the previous release and no
+ longer had any effect, has been removed.
+
New Pragmas in Clang
--------------------
"%0 has no out-of-line virtual method definitions; its vtable will be "
"emitted in every translation unit">,
InGroup<DiagGroup<"weak-vtables">>, DefaultIgnore;
-def warn_weak_template_vtable : Warning<
- "this warning is no longer in use and will be removed in the next release">,
- InGroup<DiagGroup<"weak-template-vtables">>, DefaultIgnore;
def ext_using_undefined_std : ExtWarn<
"using directive refers to implicitly-defined namespace 'std'">;
// Check that this warning is disabled on MS ABI targets which don't have key
// functions.
// RUN: %clang_cc1 %s -fsyntax-only -triple %ms_abi_triple -Werror -Wweak-vtables
-//
-// -Wweak-template-vtables is deprecated but we still parse it.
-// RUN: %clang_cc1 %s -fsyntax-only -Werror -Wweak-template-vtables
struct A { // expected-warning {{'A' has no out-of-line virtual method definitions; its vtable will be emitted in every translation unit}}
virtual void f() { }