aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/trans-array.c
diff options
context:
space:
mode:
authorMikael Morin <mikael@gcc.gnu.org>2011-11-03 21:14:19 +0000
committerMikael Morin <mikael@gcc.gnu.org>2011-11-03 21:14:19 +0000
commit596a95799c085e14dd29274b53d37f2f847cadf1 (patch)
tree5f838c9ad7d2dbd5d09a3f8b5ca63bc5530fce91 /gcc/fortran/trans-array.c
parentae9054ba251198376f04e4848117bac83352b996 (diff)
downloadgcc-596a95799c085e14dd29274b53d37f2f847cadf1.zip
gcc-596a95799c085e14dd29274b53d37f2f847cadf1.tar.gz
gcc-596a95799c085e14dd29274b53d37f2f847cadf1.tar.bz2
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
Diffstat (limited to 'gcc/fortran/trans-array.c')
-rw-r--r--gcc/fortran/trans-array.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c
index f4d8a85..cfbe909 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;