summaryrefslogtreecommitdiffstats
path: root/include/clang/Basic/DiagnosticLexKinds.td
diff options
context:
space:
mode:
authorNico Weber <nicolasweber@gmx.de>2015-07-28 02:37:37 +0000
committerNico Weber <nicolasweber@gmx.de>2015-07-28 02:37:37 +0000
commitcadcba37e290428e07dd7eccc99b6b6a05c95b81 (patch)
treecb48b89ef7f2a6d2729ca7602020baa5bb1ab891 /include/clang/Basic/DiagnosticLexKinds.td
parentcd3d8023a943a3bf37dad8d6aab23a45260e83ef (diff)
Split -Wmicrosoft into many specific warnings.
Also move "pragma comment" warning from -Wmicrosoft to -Wignored-pragmas. -Wmicrosoft currently covers many different areas, some more useful than others. Split it into many targeted flags, so that projects can choose to enable only a subset of these warnings. This is also useful for incrementally fixing and turning on these warnings. -Wno-microsoft still disables all these warnings, and -Wmicrosoft still enables them all. After this change, it's possible to pass `-Wno-microsoft -Wmicrosoft-unqualified-friend` to only enable -Wmicrosoft-unqualified-friend, and `-Wmicrosoft -Wno-microsoft-unqualified-friend` to enable all other Microsoft warnings. I put all the template-related warnings behind -Wmicrosoft-template; if that turns out to be too coarse we can make that finer later on. (In practice, I haven't seen the template-related warnings fire frequently.) Reviewed at http://reviews.llvm.org/D11504 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@243371 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Basic/DiagnosticLexKinds.td')
-rw-r--r--include/clang/Basic/DiagnosticLexKinds.td7
1 files changed, 4 insertions, 3 deletions
diff --git a/include/clang/Basic/DiagnosticLexKinds.td b/include/clang/Basic/DiagnosticLexKinds.td
index 5dd4ae0ac7..6e7a50d7c0 100644
--- a/include/clang/Basic/DiagnosticLexKinds.td
+++ b/include/clang/Basic/DiagnosticLexKinds.td
@@ -57,8 +57,9 @@ def warn_cxx98_compat_no_newline_eof : Warning<
def ext_dollar_in_identifier : Extension<"'$' in identifier">,
InGroup<DiagGroup<"dollar-in-identifier-extension">>;
-def ext_charize_microsoft : Extension<"charizing operator #@ is a Microsoft extension">,
- InGroup<Microsoft>;
+def ext_charize_microsoft : Extension<
+ "charizing operator #@ is a Microsoft extension">,
+ InGroup<MicrosoftCharize>;
def ext_token_used : Extension<"extension used">,
InGroup<DiagGroup<"language-extension-token">>;
@@ -510,7 +511,7 @@ def ext_pp_bad_paste_ms : ExtWarn<
def err_pp_operator_used_as_macro_name : Error<
"C++ operator %0 (aka %1) used as a macro name">;
def ext_pp_operator_used_as_macro_name : Extension<
- "C++ operator %0 (aka %1) used as a macro name">, InGroup<Microsoft>;
+ err_pp_operator_used_as_macro_name.Text>, InGroup<MicrosoftCppMacro>;
def err_pp_illegal_floating_literal : Error<
"floating point literal in preprocessor expression">;
def err_pp_line_requires_integer : Error<