10 #ifndef LLVM_CLANG_FRONTEND_LOGDIAGNOSTICPRINTER_H
11 #define LLVM_CLANG_FRONTEND_LOGDIAGNOSTICPRINTER_H
15 #include "llvm/ADT/SmallVector.h"
16 #include "llvm/ADT/StringRef.h"
19 class DiagnosticOptions;
37 unsigned DiagnosticID;
40 std::string WarningOption;
46 void EmitDiagEntry(llvm::raw_ostream &OS,
47 const LogDiagnosticPrinter::DiagEntry &DE);
53 std::unique_ptr<raw_ostream> StreamOwner;
62 std::string MainFilename;
63 std::string DwarfDebugFlags;
67 std::unique_ptr<raw_ostream> StreamOwner);
70 DwarfDebugFlags =
Value;
void EndSourceFile() override
Callback to inform the diagnostic client that processing of a source file has ended.
void BeginSourceFile(const LangOptions &LO, const Preprocessor *PP) override
Callback to inform the diagnostic client that processing of a source file is beginning.
Abstract interface, implemented by clients of the front-end, which formats and prints fully processed...
Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...
void setDwarfDebugFlags(StringRef Value)
void HandleDiagnostic(DiagnosticsEngine::Level DiagLevel, const Diagnostic &Info) override
Handle this diagnostic, reporting it to the user or capturing it to a log as needed.
Encodes a location in the source. The SourceManager can decode this to get at the full include stack...
Options for controlling the compiler diagnostics engine.
LogDiagnosticPrinter(raw_ostream &OS, DiagnosticOptions *Diags, std::unique_ptr< raw_ostream > StreamOwner)
Defines the Diagnostic-related interfaces.
Defines the clang::SourceLocation class and associated facilities.
Level
The level of the diagnostic, after it has been through mapping.
A SourceLocation and its associated SourceManager.
Engages in a tight little dance with the lexer to efficiently preprocess tokens.