diff options
Diffstat (limited to 'libgfortran/generated/minval_r4.c')
-rw-r--r-- | libgfortran/generated/minval_r4.c | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/libgfortran/generated/minval_r4.c b/libgfortran/generated/minval_r4.c index 4220d8755eb..fe1a2242185 100644 --- a/libgfortran/generated/minval_r4.c +++ b/libgfortran/generated/minval_r4.c @@ -41,10 +41,10 @@ export_proto(minval_r4); void minval_r4 (gfc_array_r4 *retarray, gfc_array_r4 *array, index_type *pdim) { - index_type count[GFC_MAX_DIMENSIONS - 1]; - index_type extent[GFC_MAX_DIMENSIONS - 1]; - index_type sstride[GFC_MAX_DIMENSIONS - 1]; - index_type dstride[GFC_MAX_DIMENSIONS - 1]; + index_type count[GFC_MAX_DIMENSIONS]; + index_type extent[GFC_MAX_DIMENSIONS]; + index_type sstride[GFC_MAX_DIMENSIONS]; + index_type dstride[GFC_MAX_DIMENSIONS]; GFC_REAL_4 *base; GFC_REAL_4 *dest; index_type rank; @@ -56,6 +56,9 @@ minval_r4 (gfc_array_r4 *retarray, gfc_array_r4 *array, index_type *pdim) /* Make dim zero based to avoid confusion. */ dim = (*pdim) - 1; rank = GFC_DESCRIPTOR_RANK (array) - 1; + + /* TODO: It should be a front end job to correctly set the strides. */ + if (array->dim[0].stride == 0) array->dim[0].stride = 1; @@ -174,11 +177,11 @@ void mminval_r4 (gfc_array_r4 * retarray, gfc_array_r4 * array, index_type *pdim, gfc_array_l4 * mask) { - index_type count[GFC_MAX_DIMENSIONS - 1]; - index_type extent[GFC_MAX_DIMENSIONS - 1]; - index_type sstride[GFC_MAX_DIMENSIONS - 1]; - index_type dstride[GFC_MAX_DIMENSIONS - 1]; - index_type mstride[GFC_MAX_DIMENSIONS - 1]; + index_type count[GFC_MAX_DIMENSIONS]; + index_type extent[GFC_MAX_DIMENSIONS]; + index_type sstride[GFC_MAX_DIMENSIONS]; + index_type dstride[GFC_MAX_DIMENSIONS]; + index_type mstride[GFC_MAX_DIMENSIONS]; GFC_REAL_4 *dest; GFC_REAL_4 *base; GFC_LOGICAL_4 *mbase; @@ -191,6 +194,9 @@ mminval_r4 (gfc_array_r4 * retarray, gfc_array_r4 * array, dim = (*pdim) - 1; rank = GFC_DESCRIPTOR_RANK (array) - 1; + + /* TODO: It should be a front end job to correctly set the strides. */ + if (array->dim[0].stride == 0) array->dim[0].stride = 1; |