re PR fortran/37903 (wrong-code for complicated vector subscripts)
authorMikael Morin <mikael.morin@tele2.fr>
Thu, 30 Oct 2008 20:45:09 +0000 (21:45 +0100)
committerPaul Thomas <pault@gcc.gnu.org>
Thu, 30 Oct 2008 20:45:09 +0000 (20:45 +0000)
commit45bc572c86125d86ea782853fe6f1cbff94c63b4
tree9d0afc69002d14e4a8f26dc27e704b7126263fe6
parent73c07a3e71de3e5155e3687a52f7963edece0a01
re PR fortran/37903 (wrong-code for complicated vector subscripts)

2008-10-30  Mikael Morin  <mikael.morin@tele2.fr>

        PR fortran/37903
        * trans-array.c (gfc_trans_create_temp_array): If n is less
than the temporary dimension, assert that loop->from is
zero (reverts to earlier versions). If there is at least one
null loop->to[n], it is a callee allocated array so set the
size to NULL and break.
(gfc_trans_constant_array_constructor): Set the offset to zero.
(gfc_trans_array_constructor): Remove loop shifting around the
temporary creation.
(gfc_conv_loop_setup): Prefer zero-based descriptors if
possible.  Calculate the translation from loop variables to
array indices if an array constructor.

2008-10-30  Mikael Morin  <mikael.morin@tele2.fr>

        PR fortran/37749
        * trans-array.c (gfc_trans_create_temp_array): If size is NULL
use the array bounds for loop->to.

2008-10-30  Mikael Morin  <mikael.morin@tele2.fr>

        PR fortran/37903
        * gfortran.dg/vector_subscript_4.f90: New test.

2008-10-30  Mikael Morin  <mikael.morin@tele2.fr>

        PR fortran/37749
        * gfortran.dg/vector_subscript__5.f90: New test.

From-SVN: r141467
gcc/fortran/ChangeLog
gcc/fortran/trans-array.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/vector_subscript_4.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/vector_subscript_5.f90 [new file with mode: 0644]