From e8a4b9874a433f90bb26727967eaa2cb91666bd4 Mon Sep 17 00:00:00 2001 From: Christoph Mallon Date: Wed, 27 Aug 2008 14:19:24 +0000 Subject: [PATCH] Simpler fix. [r21515] --- parser.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/parser.c b/parser.c index 657370a..1785a6f 100644 --- a/parser.c +++ b/parser.c @@ -6973,19 +6973,18 @@ static void semantic_incdec(unary_expression_t *expression) { type_t *const orig_type = expression->value->base.type; type_t *const type = skip_typeref(orig_type); - type_t * res_type = orig_type; if (is_type_pointer(type)) { if (!check_pointer_arithmetic(&expression->base.source_position, type, orig_type)) { - res_type = type_error_type; + return; } } else if (!is_type_real(type) && is_type_valid(type)) { /* TODO: improve error message */ errorf(&expression->base.source_position, "operation needs an arithmetic or pointer type"); - res_type = type_error_type; + return; } - expression->base.type = res_type; + expression->base.type = orig_type; } static void semantic_unexpr_arithmetic(unary_expression_t *expression) -- 2.20.1