aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/frontend-passes.c
diff options
context:
space:
mode:
authorThomas Koenig <tkoenig@gcc.gnu.org>2016-02-16 21:10:00 +0000
committerThomas Koenig <tkoenig@gcc.gnu.org>2016-02-16 21:10:00 +0000
commit49a1164ae39421767ad9c4e755509bc82f30be09 (patch)
tree74aced5dcf7b28daef7017a86ac1af2e3f9ed7aa /gcc/fortran/frontend-passes.c
parentbf14eba23b25519f20b198110389e1401be8624f (diff)
downloadgcc-49a1164ae39421767ad9c4e755509bc82f30be09.zip
gcc-49a1164ae39421767ad9c4e755509bc82f30be09.tar.gz
gcc-49a1164ae39421767ad9c4e755509bc82f30be09.tar.bz2
re PR fortran/69742 (ICE with -O3 and ASSOCIATE containing repeated expression)
2015-02-16 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/69742 * frontend-passes.c (cfe-expr_0): Don't register functions from within an ASSOCIATE statement. 2015-02-16 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/69742 * gfortran.dg/associate_21.f90: New test. From-SVN: r233474
Diffstat (limited to 'gcc/fortran/frontend-passes.c')
-rw-r--r--gcc/fortran/frontend-passes.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/fortran/frontend-passes.c b/gcc/fortran/frontend-passes.c
index 76edbae..156ea2b 100644
--- a/gcc/fortran/frontend-passes.c
+++ b/gcc/fortran/frontend-passes.c
@@ -734,9 +734,9 @@ cfe_expr_0 (gfc_expr **e, int *walk_subtrees,
gfc_expr *newvar;
gfc_expr **ei, **ej;
- /* Don't do this optimization within OMP workshare. */
+ /* Don't do this optimization within OMP workshare or ASSOC lists. */
- if (in_omp_workshare)
+ if (in_omp_workshare || in_assoc_list)
{
*walk_subtrees = 0;
return 0;