Decrement the line number before creating an EOF token
This commit is contained in:
parent
c6ee98e76b
commit
3cddc7907e
|
@ -17,11 +17,11 @@ vector<tok> lex(const string& in)
|
||||||
const char& current = in[i];
|
const char& current = in[i];
|
||||||
|
|
||||||
switch (current) {
|
switch (current) {
|
||||||
|
[[unlikely]] case EOF_: --lineNumber;
|
||||||
case TAG: case DEFINE: case LPAR: case RPAR:
|
case TAG: case DEFINE: case LPAR: case RPAR:
|
||||||
case LBRACE: case RBRACE: case LBRACKET: case RBRACKET:
|
case LBRACE: case RBRACE: case LBRACKET: case RBRACKET:
|
||||||
case PLUS: case HYPHEN: case LCOMP: case RCOMP:
|
case PLUS: case HYPHEN: case LCOMP: case RCOMP:
|
||||||
case DOT: case DOLLAR_SIGN: case SQUOTE:
|
case DOT: case DOLLAR_SIGN: case SQUOTE:
|
||||||
[[unlikely]] case EOF_:
|
|
||||||
resVal.emplace_back(static_cast<tok::type>(current), lineNumber);
|
resVal.emplace_back(static_cast<tok::type>(current), lineNumber);
|
||||||
[[likely]] case ' ': case '\t': case '\r': break;
|
[[likely]] case ' ': case '\t': case '\r': break;
|
||||||
[[likely]] case '\n': ++lineNumber; break;
|
[[likely]] case '\n': ++lineNumber; break;
|
||||||
|
|
Loading…
Reference in New Issue