summaryrefslogtreecommitdiff
path: root/libgfortran/intrinsics/eoshift2.c
diff options
context:
space:
mode:
Diffstat (limited to 'libgfortran/intrinsics/eoshift2.c')
-rw-r--r--libgfortran/intrinsics/eoshift2.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/libgfortran/intrinsics/eoshift2.c b/libgfortran/intrinsics/eoshift2.c
index b4f82786964..c1b326b0e44 100644
--- a/libgfortran/intrinsics/eoshift2.c
+++ b/libgfortran/intrinsics/eoshift2.c
@@ -77,6 +77,10 @@ eoshift2 (gfc_array_char *ret, const gfc_array_char *array,
ret->offset = 0;
ret->dtype = array->dtype;
+
+ /* internal_malloc_size allocates a single byte for zero size. */
+ ret->data = internal_malloc_size (size * arraysize);
+
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
@@ -90,10 +94,6 @@ eoshift2 (gfc_array_char *ret, const gfc_array_char *array,
* GFC_DESCRIPTOR_STRIDE(ret,i-1);
GFC_DIMENSION_SET(ret->dim[i], 0, ub, str);
-
- /* internal_malloc_size allocates a single byte for zero size. */
- ret->data = internal_malloc_size (size * arraysize);
-
}
}
else if (unlikely (compile_options.bounds_check))