aboutsummaryrefslogtreecommitdiff
path: root/lib/Parse/Parser.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-03-05 07:27:50 +0000
committerChris Lattner <sabre@nondot.org>2009-03-05 07:27:50 +0000
commitddcbc0a72a04a5ae2493088f1437200a9ea480b1 (patch)
treec499d21430a4f25e7694108e07329e5eeee8d8a0 /lib/Parse/Parser.cpp
parent0102c30896c83f70cf6b6519fd5c674cb981c0b5 (diff)
fix eof check
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66149 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Parse/Parser.cpp')
-rw-r--r--lib/Parse/Parser.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/Parse/Parser.cpp b/lib/Parse/Parser.cpp
index 70a336678c..b66b4f34ce 100644
--- a/lib/Parse/Parser.cpp
+++ b/lib/Parse/Parser.cpp
@@ -43,11 +43,16 @@ Parser::Parser(Preprocessor &pp, Action &actions)
/// what the current token is.
void PrettyStackTraceParserEntry::print(llvm::raw_ostream &OS) const {
const Token &Tok = P.getCurToken();
- if (Tok.getLocation().isInvalid()) {
+ if (Tok.is(tok::eof)) {
OS << "<eof> parser at end of file\n";
return;
}
+ if (Tok.getLocation().isInvalid()) {
+ OS << "<unknown> parser at unknown location\n";
+ return;
+ }
+
const Preprocessor &PP = P.getPreprocessor();
Tok.getLocation().print(OS, PP.getSourceManager());
OS << ": current parser token '" << PP.getSpelling(Tok) << "'\n";