diff options
author | Nico Weber <nicolasweber@gmx.de> | 2018-04-06 16:53:10 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-06 16:53:10 (GMT) |
commit | 660d628da83a6785a93f7096aaf985b534f4040d (patch) | |
tree | 7b4a77c6de84abe395b247ee9a8151e870b1261b /src/lexer.cc | |
parent | cf34abf3d245ba05f04d3b61e32e02fa95a36cfa (diff) | |
parent | 001b1e3cf01aa4befe011b7f17bcd22c12d4c8c4 (diff) | |
download | Ninja-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.cc | 9 |
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; |