diff options
Diffstat (limited to 'clang/include/clang/Basic/DiagnosticGroups.td')
-rw-r--r-- | clang/include/clang/Basic/DiagnosticGroups.td | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/clang/include/clang/Basic/DiagnosticGroups.td b/clang/include/clang/Basic/DiagnosticGroups.td index 22cd9344d193..c0642efaee4e 100644 --- a/clang/include/clang/Basic/DiagnosticGroups.td +++ b/clang/include/clang/Basic/DiagnosticGroups.td @@ -1046,6 +1046,13 @@ def : DiagGroup<"unused-local-typedefs", [UnusedLocalTypedef]>; def NonGCC : DiagGroup<"non-gcc", [SignCompare, Conversion, LiteralRange]>; +def CXX14Attrs : DiagGroup<"c++14-attribute-extensions">; +def CXX17Attrs : DiagGroup<"c++17-attribute-extensions">; +def CXX20Attrs : DiagGroup<"c++20-attribute-extensions">; +def FutureAttrs : DiagGroup<"future-attribute-extensions", [CXX14Attrs, + CXX17Attrs, + CXX20Attrs]>; + // A warning group for warnings about using C++11 features as extensions in // earlier C++ versions. def CXX11 : DiagGroup<"c++11-extensions", [CXX11ExtraSemi, CXX11InlineNamespace, @@ -1053,15 +1060,15 @@ def CXX11 : DiagGroup<"c++11-extensions", [CXX11ExtraSemi, CXX11InlineNamespace, // A warning group for warnings about using C++14 features as extensions in // earlier C++ versions. -def CXX14 : DiagGroup<"c++14-extensions", [CXX14BinaryLiteral]>; +def CXX14 : DiagGroup<"c++14-extensions", [CXX14BinaryLiteral, CXX14Attrs]>; // A warning group for warnings about using C++17 features as extensions in // earlier C++ versions. -def CXX17 : DiagGroup<"c++17-extensions">; +def CXX17 : DiagGroup<"c++17-extensions", [CXX17Attrs]>; // A warning group for warnings about using C++20 features as extensions in // earlier C++ versions. -def CXX20 : DiagGroup<"c++20-extensions", [CXX20Designator]>; +def CXX20 : DiagGroup<"c++20-extensions", [CXX20Designator, CXX20Attrs]>; // A warning group for warnings about using C++2b features as extensions in // earlier C++ versions. |