From 596a95799c085e14dd29274b53d37f2f847cadf1 Mon Sep 17 00:00:00 2001 From: Mikael Morin Date: Thu, 3 Nov 2011 21:14:19 +0000 Subject: [PATCH] trans-array.c (gfc_conv_loop_setup): Also skip temporary arrays. * trans-array.c (gfc_conv_loop_setup): Also skip temporary arrays. From-SVN: r180853 --- gcc/fortran/ChangeLog | 4 ++++ gcc/fortran/trans-array.c | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index e9d3f813d32a..c0fe2c0bb03d 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,7 @@ +2011-11-03 Mikael Morin + + * trans-array.c (gfc_conv_loop_setup): Also skip temporary arrays. + 2011-11-03 Mikael Morin * trans-array.c (gfc_conv_ss_startstride): Access array bounds along diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c index f4d8a8543272..cfbe9095c49f 100644 --- a/gcc/fortran/trans-array.c +++ b/gcc/fortran/trans-array.c @@ -3881,7 +3881,12 @@ gfc_conv_loop_setup (gfc_loopinfo * loop, locus * where) loop for this dimension. We try to pick the simplest term. */ for (ss = loop->ss; ss != gfc_ss_terminator; ss = ss->loop_chain) { - if (ss->type == GFC_SS_SCALAR || ss->type == GFC_SS_REFERENCE) + gfc_ss_type ss_type; + + ss_type = ss->type; + if (ss_type == GFC_SS_SCALAR + || ss_type == GFC_SS_TEMP + || ss_type == GFC_SS_REFERENCE) continue; info = &ss->data.info; -- 2.47.2