| Index: gcc/libgfortran/m4/shape.m4
|
| diff --git a/gcc/libgfortran/m4/shape.m4 b/gcc/libgfortran/m4/shape.m4
|
| index b189f804e55095635c17c52a2fce84c17f61f2af..eadd3b9b94503186125d3c78fa152468d6662661 100644
|
| --- a/gcc/libgfortran/m4/shape.m4
|
| +++ b/gcc/libgfortran/m4/shape.m4
|
| @@ -43,14 +43,14 @@ shape_'rtype_kind` ('rtype` * const restrict ret,
|
| index_type stride;
|
| index_type extent;
|
|
|
| - stride = ret->dim[0].stride;
|
| + stride = GFC_DESCRIPTOR_STRIDE(ret,0);
|
|
|
| - if (ret->dim[0].ubound < ret->dim[0].lbound)
|
| + if (GFC_DESCRIPTOR_EXTENT(ret,0) < 1)
|
| return;
|
|
|
| for (n = 0; n < GFC_DESCRIPTOR_RANK (array); n++)
|
| {
|
| - extent = array->dim[n].ubound + 1 - array->dim[n].lbound;
|
| + extent = GFC_DESCRIPTOR_EXTENT(array,n);
|
| ret->data[n * stride] = extent > 0 ? extent : 0 ;
|
| }
|
| }
|
|
|