diff options
author | Roberto Raggi <roberto.raggi@nokia.com> | 2010-08-12 15:14:25 +0200 |
---|---|---|
committer | Roberto Raggi <roberto.raggi@nokia.com> | 2010-08-12 15:15:00 +0200 |
commit | ad322e9b17b6f2ac37fdaefc29fc921528989746 (patch) | |
tree | 296601633c3ff11896dbdd3937b86ecc102f7955 /src/shared/cplusplus/Parser.cpp | |
parent | d8b6fb2282e21a515e2d1a1b03723ee53131e4f1 (diff) | |
download | qt-creator-ad322e9b17b6f2ac37fdaefc29fc921528989746.tar.gz |
Generate AST nodes for the bit fields.
Diffstat (limited to 'src/shared/cplusplus/Parser.cpp')
-rw-r--r-- | src/shared/cplusplus/Parser.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/shared/cplusplus/Parser.cpp b/src/shared/cplusplus/Parser.cpp index ad20ef7af4..fecaa7b394 100644 --- a/src/shared/cplusplus/Parser.cpp +++ b/src/shared/cplusplus/Parser.cpp @@ -2262,7 +2262,7 @@ bool Parser::parseInitDeclarator(DeclaratorAST *&node, if (acceptStructDeclarator && LA() == T_COLON) { // anonymous bit-field declaration. - // ### TODO create the AST + } else if (! parseDeclarator(node, /*stopAtCppInitializer = */ ! acceptStructDeclarator)) { return false; } @@ -2289,7 +2289,9 @@ bool Parser::parseInitDeclarator(DeclaratorAST *&node, if (parseConstantExpression(expression) && (LA() == T_COMMA || LA() == T_SEMICOLON)) { // recognized a bitfielddeclarator. - // ### TODO create the AST + if (! node) + node = new (_pool) DeclaratorAST; + node->initializer = expression; return true; } rewind(colon_token); |