aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/trans-array.c
diff options
context:
space:
mode:
authorMikael Morin <mikael@gcc.gnu.org>2011-11-03 21:12:33 +0000
committerMikael Morin <mikael@gcc.gnu.org>2011-11-03 21:12:33 +0000
commitae9054ba251198376f04e4848117bac83352b996 (patch)
tree621abccf77ff5f6bbec84eb3d817d656cfaa3bcd /gcc/fortran/trans-array.c
parent1e633e4fe1cded3e9862ad5dfb22c4378073757a (diff)
downloadgcc-ae9054ba251198376f04e4848117bac83352b996.zip
gcc-ae9054ba251198376f04e4848117bac83352b996.tar.gz
gcc-ae9054ba251198376f04e4848117bac83352b996.tar.bz2
trans-array.c (gfc_conv_ss_startstride): Access array bounds along array dimensions instead of loop dimensions.
* trans-array.c (gfc_conv_ss_startstride): Access array bounds along array dimensions instead of loop dimensions. From-SVN: r180852
Diffstat (limited to 'gcc/fortran/trans-array.c')
-rw-r--r--gcc/fortran/trans-array.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c
index 8359af2..f4d8a85 100644
--- a/gcc/fortran/trans-array.c
+++ b/gcc/fortran/trans-array.c
@@ -3347,9 +3347,11 @@ done:
case GFC_SS_FUNCTION:
for (n = 0; n < ss->data.info.dimen; n++)
{
- ss->data.info.start[n] = gfc_index_zero_node;
- ss->data.info.end[n] = gfc_index_zero_node;
- ss->data.info.stride[n] = gfc_index_one_node;
+ int dim = ss->data.info.dim[n];
+
+ ss->data.info.start[dim] = gfc_index_zero_node;
+ ss->data.info.end[dim] = gfc_index_zero_node;
+ ss->data.info.stride[dim] = gfc_index_one_node;
}
break;