]> granicus.if.org Git - clang/commitdiff
Have #pragma message not turn into error by -Werror, by default. Fixes rdar://9308989.
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>
Thu, 21 Apr 2011 17:11:44 +0000 (17:11 +0000)
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>
Thu, 21 Apr 2011 17:11:44 +0000 (17:11 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129916 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Basic/Diagnostic.td
include/clang/Basic/DiagnosticLexKinds.td
test/Lexer/pragma-message.c

index 5ff132e1306f8dbb72f369c6a2a9de6cd3e04665..688f8fa39e6f76f43b53a3cf1b1d42ae191b8b85 100644 (file)
@@ -18,6 +18,7 @@ def MAP_IGNORE  : DiagMapping;
 def MAP_WARNING : DiagMapping;
 def MAP_ERROR   : DiagMapping;
 def MAP_FATAL   : DiagMapping;
+def MAP_WARNING_NO_WERROR : DiagMapping;
 
 // Define the diagnostic classes.
 class DiagClass;
@@ -75,6 +76,7 @@ class DefaultIgnore { DiagMapping DefaultMapping = MAP_IGNORE; }
 class DefaultWarn   { DiagMapping DefaultMapping = MAP_WARNING; }
 class DefaultError  { DiagMapping DefaultMapping = MAP_ERROR; }
 class DefaultFatal  { DiagMapping DefaultMapping = MAP_FATAL; }
+class DefaultWarnNoWerror  { DiagMapping DefaultMapping = MAP_WARNING_NO_WERROR; }
 
 class NoSFINAE { bit SFINAE = 0; }
 class AccessControl { bit AccessControl = 1; }
index d1a530948b8d39dde1b0df10f1f30f48c2bceae5..b30606c3e38f38db9252b0f0ef263c003f8148c8 100644 (file)
@@ -239,7 +239,8 @@ def err_pragma_push_pop_macro_malformed : Error<
    "pragma %0 requires a parenthesized string">;
 def warn_pragma_pop_macro_no_push : Warning<
    "pragma pop_macro could not pop '%0', no matching push_macro">;
-def warn_pragma_message : Warning<"%0">, InGroup<PoundPragmaMessage>;
+def warn_pragma_message : Warning<"%0">,
+   InGroup<PoundPragmaMessage>, DefaultWarnNoWerror;
 def warn_pragma_ignored : Warning<"unknown pragma ignored">,
    InGroup<UnknownPragmas>, DefaultIgnore;
 def ext_stdc_pragma_ignored : ExtWarn<"unknown pragma in STDC namespace">,
index 710568cc2de6d40fc0640bf77d75aefb7ef66076..807edda66a0c837e99db953e042263f83dcb50cf 100644 (file)
@@ -7,7 +7,7 @@
 // OR
 // #pragma message messagestring
 //
-// RUN: %clang_cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify -Werror %s
 #define STRING2(x) #x
 #define STRING(x) STRING2(x)
 #pragma message(":O I'm a message! " STRING(__LINE__)) // expected-warning {{:O I'm a message! 13}}