diff options
author | Erik Verbruggen <erik.verbruggen@nokia.com> | 2009-07-16 12:18:05 +0200 |
---|---|---|
committer | Erik Verbruggen <erik.verbruggen@nokia.com> | 2009-07-16 12:18:05 +0200 |
commit | a262fce6d0577db8c3675bd918ce52e60c89daa4 (patch) | |
tree | 3eb8a99eec37a912514a6a4463290f27976ff4f1 /src/shared/cplusplus/Parser.cpp | |
parent | d34bf41a37adcab0904eabb08b9026b7a5fd97a3 (diff) | |
download | qt-creator-a262fce6d0577db8c3675bd918ce52e60c89daa4.tar.gz |
Added ObjC protocol expressions.
Diffstat (limited to 'src/shared/cplusplus/Parser.cpp')
-rw-r--r-- | src/shared/cplusplus/Parser.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/shared/cplusplus/Parser.cpp b/src/shared/cplusplus/Parser.cpp index ba705f9551..6ba6541068 100644 --- a/src/shared/cplusplus/Parser.cpp +++ b/src/shared/cplusplus/Parser.cpp @@ -2849,16 +2849,17 @@ bool Parser::parseObjCEncodeExpression(ExpressionAST *&) return true; } -bool Parser::parseObjCProtocolExpression(ExpressionAST *&) +bool Parser::parseObjCProtocolExpression(ExpressionAST *&node) { if (LA() != T_AT_PROTOCOL) return false; - /*unsigned protocol_token = */ consumeToken(); - unsigned lparen_token = 0, identifier_token = 0, rparen_token = 0; - match(T_LPAREN, &lparen_token); - match(T_IDENTIFIER, &identifier_token); - match(T_RPAREN, &rparen_token); + ObjCProtocolExpressionAST *ast = new (_pool) ObjCProtocolExpressionAST; + ast->protocol_token = consumeToken(); + match(T_LPAREN, &(ast->lparen_token)); + match(T_IDENTIFIER, &(ast->identifier_token)); + match(T_RPAREN, &(ast->rparen_token)); + node = ast; return true; } |