re PR fortran/30284 ([4.1 only] ICE in gfc_add_modify with internal reads)
authorPaul Thomas <pault@gcc.gnu.org>
Fri, 2 Feb 2007 12:35:57 +0000 (12:35 +0000)
committerPaul Thomas <pault@gcc.gnu.org>
Fri, 2 Feb 2007 12:35:57 +0000 (12:35 +0000)
commitd4feb3d31ab828db75f8d9848cd833de964a75a6
tree0569867556e0d5a7bd437b89e86d54632a6fbed1
parent47742ccdded540d6e157ce49f89ec4148cd27154
re PR fortran/30284 ([4.1 only] ICE in gfc_add_modify with internal reads)

2007-02-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/30284
PR fortran/30626
* trans-expr.c (gfc_conv_aliased_arg): Remove static attribute
from function and make sure that substring lengths are
translated.
(is_aliased_array): Remove static attribute.
* trans.c : Add prototypes for gfc_conv_aliased_arg and
is_aliased_array.
* trans-io.c (set_internal_unit): Add the post block to the
arguments of the function.  Use is_aliased_array to check if
temporary is needed; if so call gfc_conv_aliased_arg.
(build_dt): Pass the post block to set_internal_unit and
add to the block after all io activiy is done.

2007-02-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/30284
PR fortran/30626
* io/transfer.c (init_loop_spec, next_array_record): Change to
lbound rather than unity base.

2007-02-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/30284
* gfortran.dg/arrayio_11.f90.f90: New test.

PR fortran/30626
* gfortran.dg/arrayio_12.f90.f90: New test.

From-SVN: r121500
gcc/fortran/ChangeLog
gcc/fortran/trans-expr.c
gcc/fortran/trans-io.c
gcc/fortran/trans.h
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/arrayio_11.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/arrayio_12.f90 [new file with mode: 0644]
libgfortran/ChangeLog
libgfortran/io/transfer.c