diff options
author | Douglas Gregor <dgregor@apple.com> | 2012-10-24 15:17:15 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2012-10-24 15:17:15 +0000 |
commit | 5f3d8224af99ad0d9107601c0c31b74693371cc1 (patch) | |
tree | ccb78103e62bda6da4e2fbce57145eb303f4f068 /include/clang/Basic/DiagnosticOptions.def | |
parent | 6e347bccd1f132a41f9b72adbd25dc6be1dabe90 (diff) |
Serialize DiagnosticOptions to the AST file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166572 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Basic/DiagnosticOptions.def')
-rw-r--r-- | include/clang/Basic/DiagnosticOptions.def | 39 |
1 files changed, 35 insertions, 4 deletions
diff --git a/include/clang/Basic/DiagnosticOptions.def b/include/clang/Basic/DiagnosticOptions.def index 600ed0357d..14b8abfffa 100644 --- a/include/clang/Basic/DiagnosticOptions.def +++ b/include/clang/Basic/DiagnosticOptions.def @@ -11,7 +11,9 @@ // must define the DIAGOPT macro to make use of this information. // Optionally, the user may also define ENUM_DIAGOPT (for options // that have enumeration type and VALUE_DIAGOPT (for options that -// describe a value rather than a flag). +// describe a value rather than a flag). The SEMANTIC_* variants of these macros +// indicate options that affect the processing of the program, rather than +// simply the output. // //===----------------------------------------------------------------------===// #ifndef DIAGOPT @@ -28,7 +30,21 @@ DIAGOPT(Name, Bits, Default) DIAGOPT(Name, Bits, Default) #endif -DIAGOPT(IgnoreWarnings, 1, 0) /// -w +#ifndef SEMANTIC_DIAGOPT +# define SEMANTIC_DIAGOPT(Name, Bits, Default) DIAGOPT(Name, Bits, Default) +#endif + +#ifndef SEMANTIC_VALUE_DIAGOPT +# define SEMANTIC_VALUE_DIAGOPT(Name, Bits, Default) \ + VALUE_DIAGOPT(Name, Bits, Default) +#endif + +#ifndef SEMANTIC_ENUM_DIAGOPT +# define SEMANTIC_ENUM_DIAGOPT(Name, Type, Bits, Default) \ + ENUM_DIAGOPT(Name, Type, Bits, Default) +#endif + +SEMANTIC_DIAGOPT(IgnoreWarnings, 1, 0) /// -w DIAGOPT(NoRewriteMacros, 1, 0) /// -Wno-rewrite-macros DIAGOPT(Pedantic, 1, 0) /// -pedantic DIAGOPT(PedanticErrors, 1, 0) /// -pedantic-errors @@ -50,12 +66,27 @@ DIAGOPT(ShowColors, 1, 0) /// Show diagnostics with ANSI color sequences. ENUM_DIAGOPT(ShowOverloads, OverloadsShown, 1, Ovl_All) /// Overload candidates to show. DIAGOPT(VerifyDiagnostics, 1, 0) /// Check that diagnostics match the expected - /// diagnostics, indicated by markers in the - /// input source file. + /// diagnostics, indicated by markers in the + /// input source file. DIAGOPT(ElideType, 1, 0) /// Elide identical types in template diffing DIAGOPT(ShowTemplateTree, 1, 0) /// Print a template tree when diffing +VALUE_DIAGOPT(ErrorLimit, 32, 0) /// Limit # errors emitted. +/// Limit depth of macro expansion backtrace. +VALUE_DIAGOPT(MacroBacktraceLimit, 32, DefaultMacroBacktraceLimit) +/// Limit depth of instantiation backtrace. +VALUE_DIAGOPT(TemplateBacktraceLimit, 32, DefaultTemplateBacktraceLimit) +/// Limit depth of constexpr backtrace. +VALUE_DIAGOPT(ConstexprBacktraceLimit, 32, DefaultConstexprBacktraceLimit) + +VALUE_DIAGOPT(TabStop, 32, DefaultTabStop) /// The distance between tab stops. +/// Column limit for formatting message diagnostics, or 0 if unused. +VALUE_DIAGOPT(MessageLength, 32, 0) + #undef DIAGOPT #undef ENUM_DIAGOPT #undef VALUE_DIAGOPT +#undef SEMANTIC_DIAGOPT +#undef SEMANTIC_ENUM_DIAGOPT +#undef SEMANTIC_ |