From 4e50dfe330976c8f928fded5e6942ab4bdb918c3 Mon Sep 17 00:00:00 2001 From: Roberto Raggi Date: Wed, 24 Mar 2010 13:56:34 +0100 Subject: Require a T_EQUAL when parsing conditions. --- src/shared/cplusplus/Parser.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/shared/cplusplus/Parser.cpp') diff --git a/src/shared/cplusplus/Parser.cpp b/src/shared/cplusplus/Parser.cpp index d5c55a2c35..dc9d2da509 100644 --- a/src/shared/cplusplus/Parser.cpp +++ b/src/shared/cplusplus/Parser.cpp @@ -2786,7 +2786,7 @@ bool Parser::parseCondition(ExpressionAST *&node) if (parseTypeSpecifier(type_specifier)) { DeclaratorAST *declarator = 0; if (parseInitDeclarator(declarator, /*acceptStructDeclarator=*/false)) { - if (declarator->initializer) { + if (declarator->initializer && declarator->equals_token) { ConditionAST *ast = new (_pool) ConditionAST; ast->type_specifier_list = type_specifier; ast->declarator = declarator; @@ -5658,6 +5658,7 @@ bool Parser::parseTrailingReturnType(TrailingReturnTypeAST *&node) parseTrailingTypeSpecifierSeq(ast->type_specifiers); parseAbstractDeclarator(ast->declarator); + node = ast; return true; } -- cgit v1.2.1