[clang] 8ef26f1 - [clang] Add option to opt out of the missing_dependent_template_keyword diagnostic (#98613)
via cfe-commits
cfe-commits at lists.llvm.org
Fri Jul 12 04:14:43 PDT 2024
Author: Haojian Wu
Date: 2024-07-12T13:14:41+02:00
New Revision: 8ef26f1289bf069ccc0d6383f2f4c0116a1206c1
URL: https://github.com/llvm/llvm-project/commit/8ef26f1289bf069ccc0d6383f2f4c0116a1206c1
DIFF: https://github.com/llvm/llvm-project/commit/8ef26f1289bf069ccc0d6383f2f4c0116a1206c1.diff
LOG: [clang] Add option to opt out of the missing_dependent_template_keyword diagnostic (#98613)
After commit ce4aada6e2135e29839f672a6599db628b53295d, we observed many
warnings in our internal codebase. It is infeasible to fix all at once.
Currently, there is no way to disable this warning. This patch provides
a way to disable it using the `-Wno-missing-dependent-template-keyword` flag.
Added:
Modified:
clang/docs/ReleaseNotes.rst
clang/include/clang/Basic/DiagnosticParseKinds.td
clang/test/Misc/warning-flags.c
Removed:
################################################################################
diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
index 2bca35cd4cf3c..b211e8255ec0c 100644
--- a/clang/docs/ReleaseNotes.rst
+++ b/clang/docs/ReleaseNotes.rst
@@ -315,6 +315,7 @@ Resolutions to C++ Defect Reports
- Clang now correctly implements lookup for the terminal name of a member-qualified nested-name-specifier.
(`CWG1835: Dependent member lookup before < <https://cplusplus.github.io/CWG/issues/1835.html>`_).
+ The warning can be disabled via `-Wno-missing-dependent-template-keyword`.
C Language Changes
------------------
diff --git a/clang/include/clang/Basic/DiagnosticParseKinds.td b/clang/include/clang/Basic/DiagnosticParseKinds.td
index 0bd2e35bf2e31..e00cd47411cb3 100644
--- a/clang/include/clang/Basic/DiagnosticParseKinds.td
+++ b/clang/include/clang/Basic/DiagnosticParseKinds.td
@@ -896,7 +896,8 @@ def missing_template_arg_list_after_template_kw : Extension<
DefaultError;
def ext_missing_dependent_template_keyword : ExtWarn<
- "use 'template' keyword to treat '%0' as a dependent template name">;
+ "use 'template' keyword to treat '%0' as a dependent template name">,
+ InGroup<DiagGroup<"missing-dependent-template-keyword">>;
def ext_extern_template : Extension<
"extern templates are a C++11 extension">, InGroup<CXX11>;
diff --git a/clang/test/Misc/warning-flags.c b/clang/test/Misc/warning-flags.c
index 651a86fb6e226..7b993f6849363 100644
--- a/clang/test/Misc/warning-flags.c
+++ b/clang/test/Misc/warning-flags.c
@@ -18,10 +18,9 @@ This test serves two purposes:
The list of warnings below should NEVER grow. It should gradually shrink to 0.
-CHECK: Warnings without flags (65):
+CHECK: Warnings without flags (64):
CHECK-NEXT: ext_expected_semi_decl_list
-CHECK-NEXT: ext_missing_dependent_template_keyword
CHECK-NEXT: ext_missing_whitespace_after_macro_name
CHECK-NEXT: ext_new_paren_array_nonconst
CHECK-NEXT: ext_plain_complex
More information about the cfe-commits
mailing list