diff options
author | Chris Lattner <sabre@nondot.org> | 2009-04-15 05:15:08 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2009-04-15 05:15:08 +0000 |
commit | 839324d564c7263402fb49e73c307817a0e5992c (patch) | |
tree | 80685a26856ded6b8a0bc64a0ab8297ffa307230 | |
parent | e9e0cc799992133f751e4db74fd3385c35bbc79c (diff) |
make default diagnostic mapping more explicit in .td file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69149 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/clang/Basic/Diagnostic.td | 45 |
1 files changed, 25 insertions, 20 deletions
diff --git a/include/clang/Basic/Diagnostic.td b/include/clang/Basic/Diagnostic.td index 5f1e4ec4da..67510ea83c 100644 --- a/include/clang/Basic/Diagnostic.td +++ b/include/clang/Basic/Diagnostic.td @@ -12,30 +12,37 @@ // //===----------------------------------------------------------------------===// -// All diagnostics emitted by the compiler are an indirect subclass of this. -class Diagnostic<string text> { - string Component = ?; - string Text = text; +// Define the diagnostic mappings. +class DiagMapping; +def MAP_IGNORE : DiagMapping; +def MAP_WARNING : DiagMapping; +def MAP_ERROR : DiagMapping; +def MAP_FATAL : DiagMapping; + +/* +class Option<string name, list<OptionControlled> members> : OptionControlled { + string Name = name; + list<OptionControlled> Members = members; } -class Error<string text> : Diagnostic<text>; -class Note<string text> : Diagnostic<text>; +// Definitions for options ("warning groups"). +include "DiagnosticOptions.td" -// Anything that can be controlled by an option subclasses this. -class OptionControlled; +*/ -class DiagnosticControlled<string text, string defaultMapping> - : Diagnostic<text>, OptionControlled { - string DefaultMapping = defaultMapping; +// All diagnostics emitted by the compiler are an indirect subclass of this. +class Diagnostic<string text, DiagMapping defaultmapping> { + /// Component is specified by the file with a big let directive. + string Component = ?; + string Text = text; + DiagMapping DefaultMapping = defaultmapping; } -class Warning<string text> : DiagnosticControlled<text, "warning"> {} -class Extension<string text> : DiagnosticControlled<text, "ignore"> {} -class ExtWarn<string text> : DiagnosticControlled<text, "warning"> {} -class Option<string name, list<OptionControlled> members> : OptionControlled { - string Name = name; - list<OptionControlled> Members = members; -} +class Error<string text> : Diagnostic<text, MAP_ERROR>; +class Warning<string text> : Diagnostic<text, MAP_WARNING>; +class Extension<string text> : Diagnostic<text, MAP_IGNORE>; +class ExtWarn<string text> : Diagnostic<text, MAP_WARNING>; +class Note<string text> : Diagnostic<text, MAP_FATAL /*ignored*/>; // Definitions for Diagnostics. include "DiagnosticASTKinds.td" @@ -47,5 +54,3 @@ include "DiagnosticLexKinds.td" include "DiagnosticParseKinds.td" include "DiagnosticSemaKinds.td" -// Definitions for options ("warning groups"). -include "DiagnosticOptions.td" |