OpenASIP
2.0
|
#include <AssemblyParserDiagnostic.hh>
Public Member Functions | |
void | reset (std::shared_ptr< const std::string > assemblyText) |
void | addWarning (UValue lineNumber, const std::string &message) |
void | addError (UValue lineNumber, const std::string &message) |
void | addError (const std::string &message) |
void | clear () |
const std::set< CompilerMessage > & | warnings () const |
bool | anyErrors () const |
const std::set< CompilerMessage > & | errors () const |
const std::set< CompilerMessage > & | otherErrors () const |
std::string | codeLine (UValue lineNumber) const |
Private Attributes | |
std::set< CompilerMessage > | warnings_ |
Warning messages. More... | |
std::set< CompilerMessage > | codeErrors_ |
Error messages with line number. More... | |
std::set< CompilerMessage > | otherErrors_ |
For positionless and internal errors. More... | |
std::shared_ptr< const std::string > | listing_ = nullptr |
The current assembly listing. More... | |
std::vector< UValue > | lineStarts_ |
New line start positions in assembly listing. More... | |
The class for storing and query assembly parser reports.
Definition at line 68 of file AssemblyParserDiagnostic.hh.
void AssemblyParserDiagnostic::addError | ( | const std::string & | message | ) |
Definition at line 79 of file AssemblyParserDiagnostic.cc.
References CompilerMessage::message, and otherErrors_.
void AssemblyParserDiagnostic::addError | ( | UValue | lineNumber, |
const std::string & | message | ||
) |
Definition at line 68 of file AssemblyParserDiagnostic.cc.
References CompilerMessage::assemblerLine, codeErrors_, codeLine(), CompilerMessage::lineNumber, and CompilerMessage::message.
Referenced by InlineAsmParser::reportError().
void AssemblyParserDiagnostic::addWarning | ( | UValue | lineNumber, |
const std::string & | message | ||
) |
Definition at line 56 of file AssemblyParserDiagnostic.cc.
References CompilerMessage::assemblerLine, codeLine(), CompilerMessage::lineNumber, CompilerMessage::message, and warnings_.
Referenced by CodeSectionCreator::addMove(), Assembler::addWarning(), MachineResourceManager::indexResource(), and MachineResourceManager::rFPortOrFUIndexReference().
|
inline |
Definition at line 82 of file AssemblyParserDiagnostic.hh.
References errors(), and otherErrors().
void AssemblyParserDiagnostic::clear | ( | ) |
Clears all accumulated reports.
Definition at line 89 of file AssemblyParserDiagnostic.cc.
References codeErrors_, otherErrors_, and warnings_.
Referenced by reset().
std::string AssemblyParserDiagnostic::codeLine | ( | UValue | lineNumber | ) | const |
Definition at line 96 of file AssemblyParserDiagnostic.cc.
References assert, lineStarts_, and listing_.
Referenced by addError(), addWarning(), and Assembler::codeLine().
|
inline |
Definition at line 86 of file AssemblyParserDiagnostic.hh.
References codeErrors_.
Referenced by anyErrors().
|
inline |
Definition at line 90 of file AssemblyParserDiagnostic.hh.
References otherErrors_.
Referenced by anyErrors().
void AssemblyParserDiagnostic::reset | ( | std::shared_ptr< const std::string > | assemblyText | ) |
Resets assembly text. Also clears all reports.
Definition at line 40 of file AssemblyParserDiagnostic.cc.
References clear(), lineStarts_, and listing_.
Referenced by Assembler::compile(), and InlineAsmParser::parse().
|
inline |
Definition at line 78 of file AssemblyParserDiagnostic.hh.
References warnings_.
Referenced by llvm::LLVMTCEBuilder::emitInlineAsm(), and Assembler::warnings().
|
private |
Error messages with line number.
Definition at line 102 of file AssemblyParserDiagnostic.hh.
Referenced by addError(), clear(), and errors().
|
private |
New line start positions in assembly listing.
Definition at line 111 of file AssemblyParserDiagnostic.hh.
Referenced by codeLine(), and reset().
|
private |
The current assembly listing.
Definition at line 108 of file AssemblyParserDiagnostic.hh.
Referenced by codeLine(), and reset().
|
private |
For positionless and internal errors.
Definition at line 105 of file AssemblyParserDiagnostic.hh.
Referenced by addError(), clear(), and otherErrors().
|
private |
Warning messages.
Definition at line 99 of file AssemblyParserDiagnostic.hh.
Referenced by addWarning(), clear(), and warnings().