Lines Matching defs:Error
1 //===--- Diagnostics.cpp - Helper class for error diagnostics -----*- C++ -*-===//
25 Diagnostics::Context::Context(ConstructMatcherEnum, Diagnostics *Error,
28 : Error(Error) {
29 Error->pushContextFrame(CT_MatcherConstruct, MatcherRange) << MatcherName;
32 Diagnostics::Context::Context(MatcherArgEnum, Diagnostics *Error,
36 : Error(Error) {
37 Error->pushContextFrame(CT_MatcherArg, MatcherRange) << ArgNumber
41 Diagnostics::Context::~Context() { Error->ContextStack.pop_back(); }
43 Diagnostics::OverloadContext::OverloadContext(Diagnostics *Error)
44 : Error(Error), BeginIndex(Error->Errors.size()) {}
48 if (BeginIndex < Error->Errors.size()) {
49 Diagnostics::ErrorContent &Dest = Error->Errors[BeginIndex];
50 for (size_t i = BeginIndex + 1, e = Error->Errors.size(); i < e; ++i) {
51 Dest.Messages.push_back(Error->Errors[i].Messages[0]);
53 Error->Errors.resize(BeginIndex + 1);
59 Error->Errors.resize(BeginIndex);
68 ErrorType Error) {
74 Last.Messages.back().Type = Error;
81 return "Error building matcher $0.";
83 return "Error parsing argument $0 for matcher $1.";
99 // TODO: Add type info about the overload error.
105 return "Error parsing string token: <$0>";
107 return "Error parsing matcher. Found token <$0> while looking for '('.";
109 return "Error parsing matcher. Found end-of-code while looking for ')'.";
111 return "Error parsing matcher. Found token <$0> while looking for ','.";
123 return "Error parsing unsigned token: <$0>";
204 const ErrorContent &Error = Errors[i];
205 for (size_t i = 0, e = Error.ContextStack.size(); i != e; ++i) {
206 printContextFrameToStream(Error.ContextStack[i], OS);
209 printErrorContentToStream(Error, OS);