C++: Split designator AST

Change-Id: I9bfed2023624c818c0f35f24476693cffeaf2bbc
Reviewed-by: Wang Hoi <wanghoi@126.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
This commit is contained in:
Orgad Shaneh
2014-06-20 09:57:46 +03:00
committed by Nikolai Kosjar
parent cb079c5319
commit ea4b4bff40
14 changed files with 177 additions and 79 deletions

View File

@@ -1762,9 +1762,21 @@ BracedInitializerAST *BracedInitializerAST::clone(MemoryPool *pool) const
return ast;
}
DesignatorAST *DesignatorAST::clone(MemoryPool *pool) const
DotDesignatorAST *DotDesignatorAST::clone(MemoryPool *pool) const
{
DesignatorAST *ast = new (pool) DesignatorAST;
DotDesignatorAST *ast = new (pool) DotDesignatorAST;
ast->dot_token = dot_token;
ast->identifier_token = identifier_token;
return ast;
}
BracketDesignatorAST *BracketDesignatorAST::clone(MemoryPool *pool) const
{
BracketDesignatorAST *ast = new (pool) BracketDesignatorAST;
ast->lbracket_token = lbracket_token;
if (expression)
ast->expression = expression->clone(pool);
ast->rbracket_token = rbracket_token;
return ast;
}