OSDN Git Service

* simplify.c (gfc_simplify_transfer): Zero-initialize the
authoraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Mar 2009 09:06:51 +0000 (09:06 +0000)
committeraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Mar 2009 09:06:51 +0000 (09:06 +0000)
buffer.

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

gcc/fortran/ChangeLog
gcc/fortran/simplify.c

index 6502f1a..e91e90b 100644 (file)
@@ -1,3 +1,8 @@
+2009-03-06  Alexandre Oliva <aoliva@redhat.com>
+
+       * simplify.c (gfc_simplify_transfer): Zero-initialize the
+       buffer.
+
 2009-02-27  Tobias Burnus  <burnus@net-b.de>
 
        PR fortran/39309
 2009-02-27  Tobias Burnus  <burnus@net-b.de>
 
        PR fortran/39309
index 6893a88..7be4671 100644 (file)
@@ -4541,6 +4541,7 @@ gfc_simplify_transfer (gfc_expr *source, gfc_expr *mold, gfc_expr *size)
   /* Allocate the buffer to store the binary version of the source.  */
   buffer_size = MAX (source_size, result_size);
   buffer = (unsigned char*)alloca (buffer_size);
   /* Allocate the buffer to store the binary version of the source.  */
   buffer_size = MAX (source_size, result_size);
   buffer = (unsigned char*)alloca (buffer_size);
+  memset (buffer, 0, buffer_size);
 
   /* Now write source to the buffer.  */
   gfc_target_encode_expr (source, buffer, buffer_size);
 
   /* Now write source to the buffer.  */
   gfc_target_encode_expr (source, buffer, buffer_size);