9#ifndef LLVM_CLANG_BASIC_DIAGNOSTICOPTIONS_H
10#define LLVM_CLANG_BASIC_DIAGNOSTICOPTIONS_H
24class DiagnosticsEngine;
48 using UT = std::underlying_type_t<DiagnosticLevelMask>;
54 using UT = std::underlying_type_t<DiagnosticLevelMask>;
56 static_cast<UT
>(LHS) |
static_cast<UT
>(RHS));
61 using UT = std::underlying_type_t<DiagnosticLevelMask>;
63 static_cast<UT
>(LHS) &
static_cast<UT
>(RHS));
92#define DIAGOPT(Name, Bits, Default) unsigned Name : Bits;
93#define ENUM_DIAGOPT(Name, Type, Bits, Default)
94#include "clang/Basic/DiagnosticOptions.def"
99#define DIAGOPT(Name, Bits, Default)
100#define ENUM_DIAGOPT(Name, Type, Bits, Default) unsigned Name : Bits;
101#include "clang/Basic/DiagnosticOptions.def"
135#define DIAGOPT(Name, Bits, Default)
136#define ENUM_DIAGOPT(Name, Type, Bits, Default) \
137 Type get##Name() const { return static_cast<Type>(Name); } \
138 void set##Name(Type Value) { Name = static_cast<unsigned>(Value); }
139#include "clang/Basic/DiagnosticOptions.def"
142#define DIAGOPT(Name, Bits, Default) Name = Default;
143#define ENUM_DIAGOPT(Name, Type, Bits, Default) set##Name(Default);
144#include "clang/Basic/DiagnosticOptions.def"
Forward-declares and imports various common LLVM datatypes that clang wants to use unqualified.
@ DefaultSpellCheckingLimit
@ DefaultConstexprBacktraceLimit
@ DefaultTemplateBacktraceLimit
@ DefaultMacroBacktraceLimit
@ DefaultSnippetLineLimit
std::string DiagnosticSuppressionMappingsFile
Path for the file that defines diagnostic suppression mappings.
std::vector< std::string > Remarks
The list of -R... options used to alter the diagnostic mappings, with the prefixes removed.
friend bool ParseDiagnosticArgs(DiagnosticOptions &, llvm::opt::ArgList &, clang::DiagnosticsEngine *, bool)
Fill out Opts based on the options given in Args.
std::vector< std::string > Warnings
The list of -W... options used to alter the diagnostic mappings, with the prefixes removed.
friend class CompilerInvocationBase
std::string DiagnosticLogFile
The file to log diagnostic output to.
std::vector< std::string > VerifyPrefixes
The prefixes for comment directives sought by -verify ("expected" by default).
std::vector< std::string > UndefPrefixes
The list of prefixes from -Wundef-prefix=... used to generate warnings for undefined macros.
friend class CompilerInvocation
std::vector< std::string > SystemHeaderWarningsModules
The list of -Wsystem-headers-in-module=... options used to override whether -Wsystem-headers is enabl...
std::string DiagnosticSerializationFile
The file to serialize diagnostics to (non-appending).
Concrete class used by the front-end to report problems and issues.
The JSON file list parser is used to communicate input to InstallAPI.
DiagnosticLevelMask
A bitmask representing the diagnostic levels used by VerifyDiagnosticConsumer.
DiagnosticOptions::TextDiagnosticFormat TextDiagnosticFormat
DiagnosticLevelMask operator&(DiagnosticLevelMask LHS, DiagnosticLevelMask RHS)
OverloadsShown
Specifies which overload candidates to display when overload resolution fails.
@ Ovl_All
Show all overloads.
@ Ovl_Best
Show just the "best" overload candidates.
DiagnosticLevelMask operator~(DiagnosticLevelMask M)
const StreamingDiagnostic & operator<<(const StreamingDiagnostic &DB, const ASTContext::SectionInfo &Section)
Insertion operator for diagnostics.
DiagnosticLevelMask operator|(DiagnosticLevelMask LHS, DiagnosticLevelMask RHS)
@ None
The alignment was not explicit in code.
Diagnostic wrappers for TextAPI types for error reporting.