Error when the assignop for an assignment is invalid, eg. when trying to assign arrays

This commit is contained in:
Wolfgang (Blub) Bumiller 2012-12-17 15:56:55 +01:00
parent c2857a22e3
commit f0687adbaa

View file

@ -926,7 +926,9 @@ static bool parser_sy_apply_operator(parser_t *parser, shunt *sy)
} }
else else
assignop = type_storep_instr[exprs[0]->expression.vtype]; assignop = type_storep_instr[exprs[0]->expression.vtype];
if (!ast_compare_type(field->expression.next, exprs[1])) { if (assignop == AINSTR_END ||
!ast_compare_type(field->expression.next, exprs[1]))
{
ast_type_to_string(field->expression.next, ty1, sizeof(ty1)); ast_type_to_string(field->expression.next, ty1, sizeof(ty1));
ast_type_to_string(exprs[1], ty2, sizeof(ty2)); ast_type_to_string(exprs[1], ty2, sizeof(ty2));
if (OPTS_FLAG(ASSIGN_FUNCTION_TYPES) && if (OPTS_FLAG(ASSIGN_FUNCTION_TYPES) &&