tblgen/ClangDiagnostics: Add support for split default warning "no-werror" and
authorDaniel Dunbar <daniel@zuster.org>
Thu, 29 Sep 2011 00:29:04 +0000 (00:29 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Thu, 29 Sep 2011 00:29:04 +0000 (00:29 +0000)
"show-in-system-header" bits, which I will be adding in Clang shortly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140741 91177308-0d34-0410-b5e6-96231b3b80d8

utils/TableGen/ClangDiagnosticsEmitter.cpp

index 0a48e75681fc828da3863c1b69e9bf4400093040..130f3e1e763bc686d4bbef87f11cd7ec75b46878 100644 (file)
@@ -149,7 +149,7 @@ void ClangDiagsDefsEmitter::run(raw_ostream &OS) {
     // Filter by component.
     if (!Component.empty() && Component != R.getValueAsString("Component"))
       continue;
-    
+
     OS << "DIAG(" << R.getName() << ", ";
     OS << R.getValueAsDef("Class")->getName();
     OS << ", diag::" << R.getValueAsDef("DefaultMapping")->getName();
@@ -178,6 +178,22 @@ void ClangDiagsDefsEmitter::run(raw_ostream &OS) {
     else
       OS << ", false";
 
+    // FIXME: This condition is just to avoid temporary revlock, it can be
+    // removed.
+    if (R.getValue("WarningNoWerror")) {
+      // Default warning has no Werror bit.
+      if (R.getValueAsBit("WarningNoWerror"))
+        OS << ", true";
+      else
+        OS << ", false";
+  
+      // Default warning show in system header bit.
+      if (R.getValueAsBit("WarningShowInSystemHeader"))
+        OS << ", true";
+      else
+        OS << ", false";
+    }
+  
     // Category number.
     OS << ", " << CategoryIDs.getID(getDiagnosticCategory(&R, DGParentMap));