diff options
-rw-r--r-- | Scanner.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Scanner.cpp b/Scanner.cpp index 487d5c20..2f5f8d37 100644 --- a/Scanner.cpp +++ b/Scanner.cpp @@ -621,11 +621,11 @@ Token::Value Scanner::scanNumber(char _charSeen) static Token::Value keywordOrIdentifierToken(string const& _input) { + // The following macros are used inside TOKEN_LIST and cause non-keyword tokens to be ignored + // and keywords to be put inside the keywords variable. #define KEYWORD(name, string, precedence) {string, Token::name}, #define TOKEN(name, string, precedence) - static const map<string, Token::Value> keywords{ - TOKEN_LIST(TOKEN, KEYWORD) - }; + static const map<string, Token::Value> keywords({TOKEN_LIST(TOKEN, KEYWORD)}); #undef KEYWORD #undef TOKEN auto it = keywords.find(_input); |