diff --git a/src/apps/debugger/source_language/c_family/CLanguageFamilySyntaxHighlightInfo.cpp b/src/apps/debugger/source_language/c_family/CLanguageFamilySyntaxHighlightInfo.cpp index b1b1454c7d..1537606252 100644 --- a/src/apps/debugger/source_language/c_family/CLanguageFamilySyntaxHighlightInfo.cpp +++ b/src/apps/debugger/source_language/c_family/CLanguageFamilySyntaxHighlightInfo.cpp @@ -34,6 +34,7 @@ static const char* kLanguageKeywords[] = { "do", "double", "dynamic_cast", + "else", "enum", "explicit", "extern", @@ -41,6 +42,7 @@ static const char* kLanguageKeywords[] = { "float", "for", "goto", + "if", "inline", "int", "long", @@ -74,7 +76,7 @@ static const char* kLanguageKeywords[] = { "using", "virtual", "void", - "volatile" + "volatile", "while" }; @@ -346,6 +348,7 @@ CLanguageFamilySyntaxHighlightInfo::_MapTokenToSyntaxType(const Token& token) case TOKEN_LT: case TOKEN_LE: case TOKEN_MEMBER_PTR: + case TOKEN_CONDITION: case TOKEN_COLON: case TOKEN_SEMICOLON: case TOKEN_BACKSLASH: diff --git a/src/apps/debugger/source_language/c_family/CLanguageTokenizer.cpp b/src/apps/debugger/source_language/c_family/CLanguageTokenizer.cpp index 8d5e02a769..07de4122e3 100644 --- a/src/apps/debugger/source_language/c_family/CLanguageTokenizer.cpp +++ b/src/apps/debugger/source_language/c_family/CLanguageTokenizer.cpp @@ -376,6 +376,12 @@ Tokenizer::_ParseOperator() length = 1; break; + + case '?': + type = TOKEN_CONDITION; + length = 1; + break; + case '.': type = TOKEN_MEMBER_PTR; length = 1; diff --git a/src/apps/debugger/source_language/c_family/CLanguageTokenizer.h b/src/apps/debugger/source_language/c_family/CLanguageTokenizer.h index a7194ac17a..0fcb3193c9 100644 --- a/src/apps/debugger/source_language/c_family/CLanguageTokenizer.h +++ b/src/apps/debugger/source_language/c_family/CLanguageTokenizer.h @@ -58,6 +58,7 @@ enum { TOKEN_LE, TOKEN_BACKSLASH, + TOKEN_CONDITION, TOKEN_COLON, TOKEN_SEMICOLON, TOKEN_COMMA,