OSDN Git Service

2008-09-21 Daniel Kraft <d@domob.eu>
authordomob <domob@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 21 Sep 2008 15:33:37 +0000 (15:33 +0000)
committerdomob <domob@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 21 Sep 2008 15:33:37 +0000 (15:33 +0000)
commitd778204af61952efdd7cbe4c21b546667c9cb893
tree7e12ab2f71e4936cfd889e91f274ac7585d3640b
parent87d7dd765811e2649d39f4a5e4222bb0742b5793
2008-09-21  Daniel Kraft  <d@domob.eu>

PR fortran/35846
* trans.h (gfc_conv_string_length): New argument `expr'.
* trans-expr.c (flatten_array_ctors_without_strlen): New method.
(gfc_conv_string_length): New argument `expr' that is used in a new
special case handling if cl->length is NULL.
(gfc_conv_subref_array_arg): Pass expr to gfc_conv_string_length.
* trans-array.c (gfc_conv_expr_descriptor): Ditto.
(gfc_trans_auto_array_allocation): Pass NULL as new expr.
(gfc_trans_g77_array), (gfc_trans_dummy_array_bias): Ditto.
(gfc_trans_deferred_array): Ditto.
(gfc_trans_array_constructor): Save and restore old values of globals
used for bounds checking.
* trans-decl.c (gfc_trans_dummy_character): Ditto.
(gfc_trans_auto_character_variable): Ditto.

2008-09-21  Daniel Kraft  <d@domob.eu>

PR fortran/35846
* gfortran.dg/nested_array_constructor_1.f90: New test.
* gfortran.dg/nested_array_constructor_2.f90: New test.
* gfortran.dg/nested_array_constructor_3.f90: New test.
* gfortran.dg/nested_array_constructor_4.f90: New test.
* gfortran.dg/nested_array_constructor_5.f90: New test.
* gfortran.dg/nested_array_constructor_6.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@140529 138bc75d-0d04-0410-961f-82ee72b054a4
12 files changed:
gcc/fortran/ChangeLog
gcc/fortran/trans-array.c
gcc/fortran/trans-decl.c
gcc/fortran/trans-expr.c
gcc/fortran/trans.h
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/nested_array_constructor_1.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/nested_array_constructor_2.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/nested_array_constructor_3.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/nested_array_constructor_4.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/nested_array_constructor_5.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/nested_array_constructor_6.f90 [new file with mode: 0644]