diff options
Diffstat (limited to 'src/shared/cplusplus/Parser.cpp')
-rw-r--r-- | src/shared/cplusplus/Parser.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/shared/cplusplus/Parser.cpp b/src/shared/cplusplus/Parser.cpp index 572c9f6665..8f6cc63f68 100644 --- a/src/shared/cplusplus/Parser.cpp +++ b/src/shared/cplusplus/Parser.cpp @@ -2556,6 +2556,12 @@ bool Parser::parsePrimaryExpression(ExpressionAST *&node) case T_SLOT: return parseQtMethod(node); + case T_AT_STRING_LITERAL: + case T_AT_ENCODE: + case T_AT_PROTOCOL: + case T_AT_SELECTOR: + return parseObjCExpression(node); + default: { NameAST *name = 0; if (parseNameId(name)) { @@ -2570,6 +2576,30 @@ bool Parser::parsePrimaryExpression(ExpressionAST *&node) return false; } +bool Parser::parseObjCExpression(ExpressionAST *&node) +{ + switch (LA()) { + case T_AT_ENCODE: + break; + + case T_AT_PROTOCOL: + break; + + case T_AT_SELECTOR: + break; + + case T_LBRACKET: + break; + + case T_AT_STRING_LITERAL: + break; + + default: + break; + } // switch + return false; +} + bool Parser::parseNameId(NameAST *&name) { unsigned start = cursor(); |