diff --git a/parser.c b/parser.c index e2eabc1..0dddd78 100644 --- a/parser.c +++ b/parser.c @@ -1042,7 +1042,7 @@ static bool parser_sy_apply_operator(parser_t *parser, shunt *sy) else assignop = type_storep_instr[exprs[0]->expression.vtype]; if (assignop == AINSTR_END || - !ast_compare_type(field->expression.next, exprs[1])) + (exprs[1]->expression.vtype != TYPE_NIL && !ast_compare_type(field->expression.next, exprs[1]))) { ast_type_to_string(field->expression.next, ty1, sizeof(ty1)); ast_type_to_string(exprs[1], ty2, sizeof(ty2));