From: Jerry DeLisle Date: Sun, 29 Sep 2019 02:35:58 +0000 (+0000) Subject: re PR fortran/91802 (ICE in mio_name_expr_t, at fortran/module.c:2141) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=59784d3851fccda86fcdf2cdee5a3c3ca231a2d3;p=gcc.git re PR fortran/91802 (ICE in mio_name_expr_t, at fortran/module.c:2141) 2019-09-28 Jerry DeLisle PR fortran/91802 * decl.c (attr_decl1): Return MATCH_ERROR without free to avoid bad expression type in free_expr0() ICE in rank+corank check. From-SVN: r276265 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 3d40c9a24d4..0b870066b66 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2019-09-28 Jerry DeLisle + + PR fortran/91802 + * decl.c (attr_decl1): Return MATCH_ERROR without free to avoid + bad expression type in free_expr0() ICE in rank+corank check. + 2019-09-28 Steven G. Kargl PR fortran/91802 diff --git a/gcc/fortran/decl.c b/gcc/fortran/decl.c index 31b2336a7b0..b6add1c0bb8 100644 --- a/gcc/fortran/decl.c +++ b/gcc/fortran/decl.c @@ -8474,7 +8474,7 @@ attr_decl1 (void) { gfc_error ("rank + corank of %qs exceeds 15 at %C", sym->name); m = MATCH_ERROR; - goto cleanup; + return m; } if (sym->attr.cray_pointee && sym->as != NULL)