array.c (gfc_copy_array_ref): Don't copy the offset field.
* array.c (gfc_copy_array_ref): Don't copy the offset field. * expr.c (find_array_section): Ignore the offset field. * trans-expr.c (gfc_find_interface_mapping_to_ref): Don't apply any interface mapping to the offset field. * gfortran.h (struct gfc_array_ref): Remove the offset field. From-SVN: r190092
This commit is contained in:
parent
a8da72b86c
commit
328ece7de3
|
@ -1,3 +1,11 @@
|
|||
2012-08-02 Mikael Morin <mikael@gcc.gnu.org>
|
||||
|
||||
* array.c (gfc_copy_array_ref): Don't copy the offset field.
|
||||
* expr.c (find_array_section): Ignore the offset field.
|
||||
* trans-expr.c (gfc_find_interface_mapping_to_ref): Don't apply
|
||||
any interface mapping to the offset field.
|
||||
* gfortran.h (struct gfc_array_ref): Remove the offset field.
|
||||
|
||||
2012-08-02 Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
PR fortran/54147
|
||||
|
|
|
@ -50,8 +50,6 @@ gfc_copy_array_ref (gfc_array_ref *src)
|
|||
dest->stride[i] = gfc_copy_expr (src->stride[i]);
|
||||
}
|
||||
|
||||
dest->offset = gfc_copy_expr (src->offset);
|
||||
|
||||
return dest;
|
||||
}
|
||||
|
||||
|
|
|
@ -1490,13 +1490,10 @@ find_array_section (gfc_expr *expr, gfc_ref *ref)
|
|||
|
||||
/* Now clock through the array reference, calculating the index in
|
||||
the source constructor and transferring the elements to the new
|
||||
constructor. */
|
||||
constructor. */
|
||||
for (idx = 0; idx < (int) mpz_get_si (nelts); idx++)
|
||||
{
|
||||
if (ref->u.ar.offset)
|
||||
mpz_set (ptr, ref->u.ar.offset->value.integer);
|
||||
else
|
||||
mpz_init_set_ui (ptr, 0);
|
||||
mpz_init_set_ui (ptr, 0);
|
||||
|
||||
incr_ctr = true;
|
||||
for (d = 0; d < rank; d++)
|
||||
|
|
|
@ -1515,8 +1515,6 @@ typedef struct gfc_array_ref
|
|||
*stride[GFC_MAX_DIMENSIONS];
|
||||
|
||||
enum gfc_array_ref_dimen_type dimen_type[GFC_MAX_DIMENSIONS];
|
||||
|
||||
struct gfc_expr *offset;
|
||||
}
|
||||
gfc_array_ref;
|
||||
|
||||
|
|
|
@ -2806,7 +2806,6 @@ gfc_apply_interface_mapping_to_ref (gfc_interface_mapping * mapping,
|
|||
gfc_apply_interface_mapping_to_expr (mapping, ref->u.ar.end[n]);
|
||||
gfc_apply_interface_mapping_to_expr (mapping, ref->u.ar.stride[n]);
|
||||
}
|
||||
gfc_apply_interface_mapping_to_expr (mapping, ref->u.ar.offset);
|
||||
break;
|
||||
|
||||
case REF_COMPONENT:
|
||||
|
|
Loading…
Reference in New Issue