Fixed parsing of selector argument expressions.

This commit is contained in:
Erik Verbruggen
2009-12-18 16:57:15 +01:00
parent 6573ec5709
commit 19beb9c84f

View File

@@ -3370,11 +3370,12 @@ bool Parser::parseObjCSelectorArg(ObjCSelectorArgumentAST *&selNode, ObjCMessage
selNode->colon_token = consumeToken();
argNode = new (_pool) ObjCMessageArgumentAST;
ExpressionAST *expr = argNode->parameter_value_expression;
ExpressionAST **expr = &(argNode->parameter_value_expression);
unsigned expressionStart = cursor();
if (parseAssignmentExpression(expr) && LA() == T_COLON && expr->asCastExpression()) {
if (parseAssignmentExpression(*expr) && LA() == T_COLON && (*expr)->asCastExpression()) {
rewind(expressionStart);
parseUnaryExpression(expr);
parseUnaryExpression(*expr);
//
}
return true;
}