diff options
Diffstat (limited to 'libgfortran/generated/transpose_i8.c')
-rw-r--r-- | libgfortran/generated/transpose_i8.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/libgfortran/generated/transpose_i8.c b/libgfortran/generated/transpose_i8.c index 2dcaa000889..c4554e6c210 100644 --- a/libgfortran/generated/transpose_i8.c +++ b/libgfortran/generated/transpose_i8.c @@ -38,6 +38,21 @@ __transpose_8 (gfc_array_i8 * ret, gfc_array_i8 * source) assert (GFC_DESCRIPTOR_RANK (source) == 2); + if (ret->data == NULL) + { + ret->data = internal_malloc (sizeof (GFC_INTEGER_8) * size0 (source)); + ret->base = 0; + ret->dtype = source->dtype; + + ret->dim[0].lbound = 0; + ret->dim[0].ubound = source->dim[1].ubound - source->dim[1].lbound; + ret->dim[0].stride = 1; + + ret->dim[1].lbound = 0; + ret->dim[1].ubound = source->dim[0].ubound - source->dim[0].lbound; + ret->dim[1].stride = ret->dim[0].ubound+1; + } + if (ret->dim[0].stride == 0) ret->dim[0].stride = 1; if (source->dim[0].stride == 0) |