re PR fortran/21104 (Segmentation fault on correct code)
authorRichard Sandiford <richard@codesourcery.com>
Fri, 9 Sep 2005 06:22:28 +0000 (06:22 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Fri, 9 Sep 2005 06:22:28 +0000 (06:22 +0000)
commit62ab4a54994341ab463149da427a51d70d2fbc70
treeca11fbf9511e837a2b37b79ebad342b1aacc05a1
parentec25720ba36c2017367b2939cbf1a002694313ab
re PR fortran/21104 (Segmentation fault on correct code)

PR fortran/21104
* trans.h (gfc_interface_sym_mapping, gfc_interface_mapping): Moved
from trans-expr.c.
(gfc_init_interface_mapping, gfc_free_interface_mapping)
(gfc_add_interface_mapping, gfc_finish_interface_mapping)
(gfc_apply_interface_mapping): Declare.
* trans-array.h (gfc_set_loop_bounds_from_array_spec): Declare.
(gfc_trans_allocate_temp_array): Add pre and post block arguments.
* trans-array.c (gfc_set_loop_bounds_from_array_spec): New function.
(gfc_trans_allocate_array_storage): Replace loop argument with
separate pre and post blocks.
(gfc_trans_allocate_temp_array): Add pre and post block arguments.
Update call to gfc_trans_allocate_array_storage.
(gfc_trans_array_constructor, gfc_conv_loop_setup): Adjust for new
interface to gfc_trans_allocate_temp_array.
* trans-expr.c (gfc_interface_sym_mapping, gfc_interface_mapping):
Moved to trans.h.
(gfc_init_interface_mapping, gfc_free_interface_mapping)
(gfc_add_interface_mapping, gfc_finish_interface_mapping)
(gfc_apply_interface_mapping): Make extern.
(gfc_conv_function_call): Build an interface mapping for array
return values too.  Call gfc_set_loop_bounds_from_array_spec.
Adjust call to gfc_trans_allocate_temp_array so that code is
added to SE rather than LOOP.

From-SVN: r104075
gcc/fortran/ChangeLog
gcc/fortran/trans-array.c
gcc/fortran/trans-array.h
gcc/fortran/trans-expr.c
gcc/fortran/trans.h
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/array_alloc_1.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/array_alloc_2.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/array_alloc_3.f90 [new file with mode: 0644]