Fix regression in 'tblgen -gen-clang-diags-defs': Emit the diagnostic kind instead...
[oota-llvm.git] / utils / TableGen / ClangDiagnosticsEmitter.cpp
index cb65cea31a2b4b97ee7f6164816cfcb617df5f83..0f93a4fb1001ca8a57079e2ba1fe16e8ba460e8a 100644 (file)
@@ -43,7 +43,8 @@ static const RecordVal* findRecordVal(const Record& R, const std::string &key) {
 static const Record* getDiagKind(const Record* DiagClass, const Record &R) {  
   const SuperClassVector &SC = R.getSuperClasses();
   for (SuperClassVector::const_iterator I=SC.begin(), E=SC.end(); I!=E; ++I)
-    if ((*I)->isSubClassOf(DiagClass))
+    if ((*I)->isSubClassOf(DiagClass) && 
+        (*I)->getName() != "DiagnosticControlled")
       return *I;
   
   return 0;