aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-03-18 16:00:17 +0000
committerTed Kremenek <kremenek@apple.com>2009-03-18 16:00:17 +0000
commitdd62beb8f7004c14c6f7731cb57e2c188051208e (patch)
tree7f9a583ec4b6db232f47844577582c7ee93192a4
parentf8575aa49b528e34617d7988f2105e492d4b2c1c (diff)
Refactor 'Warning', 'Extension', and 'ExtWarn' TableGen classes to subclass
'DiagnosticControlled'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67209 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/clang/Basic/Diagnostic.td16
1 files changed, 6 insertions, 10 deletions
diff --git a/include/clang/Basic/Diagnostic.td b/include/clang/Basic/Diagnostic.td
index 415e7fa811..dd8a872183 100644
--- a/include/clang/Basic/Diagnostic.td
+++ b/include/clang/Basic/Diagnostic.td
@@ -24,17 +24,13 @@ class Note<string text> : Diagnostic<text>;
// Anything that can be controlled by an option subclasses this.
class OptionControlled;
-class Warning<string text> : Diagnostic<text>, OptionControlled {
- string DefaultMapping = "warning";
+class DiagnosticControlled<string text, string defaultMapping>
+ : Diagnostic<text>, OptionControlled {
+ string DefaultMapping = defaultMapping;
}
-class Extension<string text> : Diagnostic<text>, OptionControlled {
- string DefaultMapping = "ignore";
-}
-class ExtWarn<string text> : Diagnostic<text>, OptionControlled {
- string DefaultMapping = "warning";
-}
-
-
+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;