2011-10-19  Mikael Morin  <mik...@gcc.gnu.org>

        * trans-array.c (gfc_conv_ss_startstride): Access array bounds along
        array dimensions instead of loop dimensions.
diff --git a/trans-array.c b/trans-array.c
index 8359af2..f4d8a85 100644
--- a/trans-array.c
+++ b/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;
 

Reply via email to