summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/Parser.cpp
diff options
context:
space:
mode:
authorRoberto Raggi <roberto.raggi@nokia.com>2009-11-30 16:30:21 +0100
committerRoberto Raggi <roberto.raggi@nokia.com>2009-11-30 17:07:22 +0100
commit527a9bd526d854d3f43b633a94af6dea642297db (patch)
treee334bb57c912b649551493dc985d2f0dd2e62a22 /src/shared/cplusplus/Parser.cpp
parent5fc8324b8bb72ed5156ce52db2e6e506e568b405 (diff)
downloadqt-creator-527a9bd526d854d3f43b633a94af6dea642297db.tar.gz
Inital support for Q_D/Q_Q declarations.
Diffstat (limited to 'src/shared/cplusplus/Parser.cpp')
-rw-r--r--src/shared/cplusplus/Parser.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/shared/cplusplus/Parser.cpp b/src/shared/cplusplus/Parser.cpp
index 7e464b7d8b..a4be22f5b4 100644
--- a/src/shared/cplusplus/Parser.cpp
+++ b/src/shared/cplusplus/Parser.cpp
@@ -2104,6 +2104,16 @@ bool Parser::parseStatement(StatementAST *&node)
if (objCEnabled())
return parseObjCSynchronizedStatement(node);
+ case T_Q_D:
+ case T_Q_Q: {
+ QtMemberDeclarationAST *ast = new (_pool) QtMemberDeclarationAST;
+ ast->q_token = consumeToken();
+ match(T_LPAREN, &ast->lparen_token);
+ parseTypeId(ast->type_id);
+ match(T_RPAREN, &ast->rparen_token);
+ node = ast;
+ } return true;
+
default:
if (LA() == T_IDENTIFIER && LA(2) == T_COLON)
return parseLabeledStatement(node);