OSDN Git Service

PR fortran/18375
authorpbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 10 Nov 2004 20:03:21 +0000 (20:03 +0000)
committerpbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 10 Nov 2004 20:03:21 +0000 (20:03 +0000)
* trans-expr.c (gfc_trans_subarray_assign): Free shape before ss.
* trans-io.c (transfer_array_component): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@90449 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/fortran/ChangeLog
gcc/fortran/trans-expr.c
gcc/fortran/trans-io.c

index 2657529..faeebac 100644 (file)
@@ -1,5 +1,11 @@
 2004-11-10  Paul Brook  <paul@codesourcery.com>
 
+       PR fortran/18375
+       * trans-expr.c (gfc_trans_subarray_assign): Free shape before ss.
+       * trans-io.c (transfer_array_component): Ditto.
+
+2004-11-10  Paul Brook  <paul@codesourcery.com>
+
        * invoke.texi: Fix typo.
 
 2004-11-08  Kazu Hirata  <kazu@cs.umass.edu>
index d6da9bf..8832b33 100644 (file)
@@ -1566,12 +1566,12 @@ gfc_trans_subarray_assign (tree dest, gfc_component * cm, gfc_expr * expr)
   gfc_add_block_to_block (&block, &loop.pre);
   gfc_add_block_to_block (&block, &loop.post);
 
-  gfc_cleanup_loop (&loop);
-
   for (n = 0; n < cm->as->rank; n++)
     mpz_clear (lss->shape[n]);
   gfc_free (lss->shape);
 
+  gfc_cleanup_loop (&loop);
+
   return gfc_finish_block (&block);
 }
 
index d5e8df6..194856f 100644 (file)
@@ -1222,12 +1222,12 @@ transfer_array_component (tree expr, gfc_component * cm)
   gfc_add_block_to_block (&block, &loop.pre);
   gfc_add_block_to_block (&block, &loop.post);
 
-  gfc_cleanup_loop (&loop);
-
   for (n = 0; n < cm->as->rank; n++)
     mpz_clear (ss->shape[n]);
   gfc_free (ss->shape);
 
+  gfc_cleanup_loop (&loop);
+
   return gfc_finish_block (&block);
 }