diff options
author | Mikael Morin <mikael@gcc.gnu.org> | 2011-11-03 21:12:33 +0000 |
---|---|---|
committer | Mikael Morin <mikael@gcc.gnu.org> | 2011-11-03 21:12:33 +0000 |
commit | ae9054ba251198376f04e4848117bac83352b996 (patch) | |
tree | 621abccf77ff5f6bbec84eb3d817d656cfaa3bcd /gcc/fortran/trans-array.c | |
parent | 1e633e4fe1cded3e9862ad5dfb22c4378073757a (diff) | |
download | gcc-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.c | 8 |
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; |