[cfe-commits] r129916 - in /cfe/trunk: include/clang/Basic/Diagnostic.td include/clang/Basic/DiagnosticLexKinds.td test/Lexer/pragma-message.c

Argyrios Kyrtzidis akyrtzi at gmail.com
Thu Apr 21 10:11:44 PDT 2011


Author: akirtzidis
Date: Thu Apr 21 12:11:44 2011
New Revision: 129916

URL: http://llvm.org/viewvc/llvm-project?rev=129916&view=rev
Log:
Have #pragma message not turn into error by -Werror, by default. Fixes rdar://9308989.

Modified:
    cfe/trunk/include/clang/Basic/Diagnostic.td
    cfe/trunk/include/clang/Basic/DiagnosticLexKinds.td
    cfe/trunk/test/Lexer/pragma-message.c

Modified: cfe/trunk/include/clang/Basic/Diagnostic.td
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/Diagnostic.td?rev=129916&r1=129915&r2=129916&view=diff
==============================================================================
--- cfe/trunk/include/clang/Basic/Diagnostic.td (original)
+++ cfe/trunk/include/clang/Basic/Diagnostic.td Thu Apr 21 12:11:44 2011
@@ -18,6 +18,7 @@
 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 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; }

Modified: cfe/trunk/include/clang/Basic/DiagnosticLexKinds.td
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticLexKinds.td?rev=129916&r1=129915&r2=129916&view=diff
==============================================================================
--- cfe/trunk/include/clang/Basic/DiagnosticLexKinds.td (original)
+++ cfe/trunk/include/clang/Basic/DiagnosticLexKinds.td Thu Apr 21 12:11:44 2011
@@ -239,7 +239,8 @@
    "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">,

Modified: cfe/trunk/test/Lexer/pragma-message.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Lexer/pragma-message.c?rev=129916&r1=129915&r2=129916&view=diff
==============================================================================
--- cfe/trunk/test/Lexer/pragma-message.c (original)
+++ cfe/trunk/test/Lexer/pragma-message.c Thu Apr 21 12:11:44 2011
@@ -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}}





More information about the cfe-commits mailing list