diff options
Diffstat (limited to 'llvm/lib/MC/MCParser/MCAsmParser.cpp')
-rw-r--r-- | llvm/lib/MC/MCParser/MCAsmParser.cpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/llvm/lib/MC/MCParser/MCAsmParser.cpp b/llvm/lib/MC/MCParser/MCAsmParser.cpp index 3282a61e515..f8bc04f7144 100644 --- a/llvm/lib/MC/MCParser/MCAsmParser.cpp +++ b/llvm/lib/MC/MCParser/MCAsmParser.cpp @@ -17,8 +17,8 @@ #include "llvm/Support/raw_ostream.h" using namespace llvm; -MCAsmParser::MCAsmParser() : TargetParser(nullptr), ShowParsedOperands(0) { -} +MCAsmParser::MCAsmParser() + : TargetParser(nullptr), ShowParsedOperands(0), HadError(false), PendingErrors() {} MCAsmParser::~MCAsmParser() { } @@ -84,8 +84,18 @@ bool MCAsmParser::check(bool P, SMLoc Loc, const Twine &Msg) { return false; } -bool MCAsmParser::TokError(const Twine &Msg, ArrayRef<SMRange> Ranges) { - Error(getLexer().getLoc(), Msg, Ranges); +bool MCAsmParser::TokError(const Twine &Msg, SMRange Range) { + return Error(getLexer().getLoc(), Msg, Range); +} + +bool MCAsmParser::Error(SMLoc L, const Twine &Msg, SMRange Range) { + HadError = true; + + MCPendingError PErr; + PErr.Loc = L; + Msg.toVector(PErr.Msg); + PErr.Range = Range; + PendingErrors.push_back(PErr); return true; } |