don't fail on missing erturn value
authorMatthias Braun <matze@braunis.de>
Wed, 25 Jun 2008 08:26:30 +0000 (08:26 +0000)
committerMatthias Braun <matze@braunis.de>
Wed, 25 Jun 2008 08:26:30 +0000 (08:26 +0000)
[r20251]

parser.c

index 82284c0..2681891 100644 (file)
--- a/parser.c
+++ b/parser.c
@@ -7694,7 +7694,8 @@ static statement_t *parse_return(void)
                        }
                }
                /* check for returning address of a local var */
-               if (return_value->base.kind == EXPR_UNARY_TAKE_ADDRESS) {
+               if (return_value != NULL &&
+                               return_value->base.kind == EXPR_UNARY_TAKE_ADDRESS) {
                        const expression_t *expression = return_value->unary.value;
                        if (is_local_variable(expression)) {
                                warningf(&statement->base.source_position,