summaryrefslogtreecommitdiffstats
path: root/src/lexer.cc
diff options
context:
space:
mode:
authorNico Weber <nicolasweber@gmx.de>2018-04-06 16:53:10 (GMT)
committerGitHub <noreply@github.com>2018-04-06 16:53:10 (GMT)
commit660d628da83a6785a93f7096aaf985b534f4040d (patch)
tree7b4a77c6de84abe395b247ee9a8151e870b1261b /src/lexer.cc
parentcf34abf3d245ba05f04d3b61e32e02fa95a36cfa (diff)
parent001b1e3cf01aa4befe011b7f17bcd22c12d4c8c4 (diff)
downloadNinja-660d628da83a6785a93f7096aaf985b534f4040d.zip
Ninja-660d628da83a6785a93f7096aaf985b534f4040d.tar.gz
Ninja-660d628da83a6785a93f7096aaf985b534f4040d.tar.bz2
Merge pull request #1415 from nico/readident
Improve location of error messages around identifiers.
Diffstat (limited to 'src/lexer.cc')
-rw-r--r--src/lexer.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/lexer.cc b/src/lexer.cc
index 37b8678..49c69aa 100644
--- a/src/lexer.cc
+++ b/src/lexer.cc
@@ -537,8 +537,9 @@ yy92:
bool Lexer::ReadIdent(string* out) {
const char* p = ofs_;
+ const char* start;
for (;;) {
- const char* start = p;
+ start = p;
{
unsigned char yych;
@@ -604,7 +605,10 @@ yy96:
}
yy97:
++p;
- { return false; }
+ {
+ last_token_ = start;
+ return false;
+ }
yy99:
++p;
yych = *p;
@@ -616,6 +620,7 @@ yy100:
}
}
+ last_token_ = start;
ofs_ = p;
EatWhitespace();
return true;