aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorHarald Anlauf <anlauf@gmx.de>2021-08-07 20:30:32 +0200
committerHarald Anlauf <anlauf@gmx.de>2021-08-07 20:30:32 +0200
commitcd754efa9a5349c693919046b8be074395ea114e (patch)
treec2d4109bdc2d945d5f9738e98d21fb1cb7ac8318 /gcc
parent6866f4819ad8e6e62fef2177520f9fb217dfa353 (diff)
downloadgcc-cd754efa9a5349c693919046b8be074395ea114e.zip
gcc-cd754efa9a5349c693919046b8be074395ea114e.tar.gz
gcc-cd754efa9a5349c693919046b8be074395ea114e.tar.bz2
Fortran: ICE with automatic character object, save, and various options
gcc/fortran/ChangeLog: PR fortran/68568 * primary.c (gfc_expr_attr): Variable attribute can only be inquired when symtree is non-NULL.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/primary.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/fortran/primary.c b/gcc/fortran/primary.c
index 9fe8d1e..56a78d6 100644
--- a/gcc/fortran/primary.c
+++ b/gcc/fortran/primary.c
@@ -2779,7 +2779,7 @@ gfc_expr_attr (gfc_expr *e)
&& e->value.function.isym->transformational
&& e->ts.type == BT_CLASS)
attr = CLASS_DATA (e)->attr;
- else
+ else if (e->symtree)
attr = gfc_variable_attr (e, NULL);
/* TODO: NULL() returns pointers. May have to take care of this