glsl: handle error case with ast_post_inc, ast_post_dec

Return ir_rvalue::error_value with ast_post_inc, ast_post_dec if
parser error was emitted previously. This way process_array_size
won't see bogus IR generated like with commit 9c676a6427.

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98699
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
This commit is contained in:
Tapani Pälli
2018-08-07 08:20:29 +03:00
parent fdfb689a48
commit 03a5acec68

View File

@@ -1928,6 +1928,11 @@ ast_expression::do_hir(exec_list *instructions,
error_emitted = op[0]->type->is_error() || op[1]->type->is_error();
if (error_emitted) {
result = ir_rvalue::error_value(ctx);
break;
}
type = arithmetic_result_type(op[0], op[1], false, state, & loc);
ir_rvalue *temp_rhs;