aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.6/gcc/fortran/trans-io.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.6/gcc/fortran/trans-io.c')
-rw-r--r--gcc-4.6/gcc/fortran/trans-io.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc-4.6/gcc/fortran/trans-io.c b/gcc-4.6/gcc/fortran/trans-io.c
index f6a783f..53ff1f4 100644
--- a/gcc-4.6/gcc/fortran/trans-io.c
+++ b/gcc-4.6/gcc/fortran/trans-io.c
@@ -2005,10 +2005,8 @@ transfer_array_component (tree expr, gfc_component * cm, locus * where)
gfc_add_block_to_block (&block, &loop.pre);
gfc_add_block_to_block (&block, &loop.post);
- for (n = 0; n < cm->as->rank; n++)
- mpz_clear (ss->shape[n]);
- gfc_free (ss->shape);
-
+ gcc_assert (ss->shape != NULL);
+ gfc_free_shape (&ss->shape, cm->as->rank);
gfc_cleanup_loop (&loop);
return gfc_finish_block (&block);