diff options
author | Roberto Raggi <roberto.raggi@nokia.com> | 2010-03-25 12:15:38 +0100 |
---|---|---|
committer | Roberto Raggi <roberto.raggi@nokia.com> | 2010-03-25 12:16:18 +0100 |
commit | fe261bc256abb3e470a0e33a4b7569307e973db5 (patch) | |
tree | 6f359760d060f3a347e060ae4647ac92639ef252 /src/shared/cplusplus/ASTClone.cpp | |
parent | 1bdae0815d20f9a93c57b14f52dd69a808b739c6 (diff) | |
download | qt-creator-fe261bc256abb3e470a0e33a4b7569307e973db5.tar.gz |
Parse C++ 0x argument packs.
Diffstat (limited to 'src/shared/cplusplus/ASTClone.cpp')
-rw-r--r-- | src/shared/cplusplus/ASTClone.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/shared/cplusplus/ASTClone.cpp b/src/shared/cplusplus/ASTClone.cpp index 42b4ed6600..73237e1765 100644 --- a/src/shared/cplusplus/ASTClone.cpp +++ b/src/shared/cplusplus/ASTClone.cpp @@ -1083,6 +1083,7 @@ SizeofExpressionAST *SizeofExpressionAST::clone(MemoryPool *pool) const { SizeofExpressionAST *ast = new (pool) SizeofExpressionAST; ast->sizeof_token = sizeof_token; + ast->dot_dot_dot_token = dot_dot_dot_token; ast->lparen_token = lparen_token; if (expression) ast->expression = expression->clone(pool); @@ -1659,3 +1660,15 @@ TrailingReturnTypeAST *TrailingReturnTypeAST::clone(MemoryPool *pool) const return ast; } +BracedInitializerAST *BracedInitializerAST::clone(MemoryPool *pool) const +{ + BracedInitializerAST *ast = new (pool) BracedInitializerAST; + ast->lbrace_token = lbrace_token; + for (ExpressionListAST *iter = expression_list, **ast_iter = &ast->expression_list; + iter; iter = iter->next, ast_iter = &(*ast_iter)->next) + *ast_iter = new (pool) ExpressionListAST((iter->value) ? iter->value->clone(pool) : 0); + ast->comma_token = comma_token; + ast->rbrace_token = rbrace_token; + return ast; +} + |