diff --git a/src/lexer.c b/src/lexer.c index e8360a7c5025..78df4ccf62f9 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -370,7 +370,6 @@ Token *Lexer::peek(Token *ct) { t = new Token(); scan(t); - t->next = NULL; ct->next = t; } return t; @@ -1231,7 +1230,7 @@ void Lexer::scan(Token *t) case '#': { p++; - Token *n = peek(&token); + Token *n = peek(t); if (n->value == TOKidentifier && n->ident == Id::line) { nextToken(); diff --git a/src/lexer.h b/src/lexer.h index 3b1c5d4bbe1c..37e81c68d92e 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -252,6 +252,7 @@ struct Token static const char *tochars[TOKMAX]; static void *operator new(size_t sz); + Token() : next(NULL) {} int isKeyword(); void print(); const char *toChars();