]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/fortran/gfortran.h
re PR fortran/26393 (ICE with function returning variable lenght array)
authorPaul Thomas <pault@gcc.gnu.org>
Wed, 1 Mar 2006 22:24:19 +0000 (22:24 +0000)
committerPaul Thomas <pault@gcc.gnu.org>
Wed, 1 Mar 2006 22:24:19 +0000 (22:24 +0000)
commit61321991ff5f055015750ddf36444705b9921464
tree1fb7018901bd09ec73d55b0ccf66775cd2947e62
parent8acb1b3d1c6369349372f74e815db2375ea8e0c5
re PR fortran/26393 (ICE with function returning variable lenght array)

2006-03-01  Paul Thomas  <pault@gcc.gnu.org>

* iresolve.c (gfc_resolve_dot_product):  Remove any difference in
treatment of logical types.
* trans-intrinsic.c (gfc_conv_intrinsic_dot_product):  New function.

PR fortran/26393
* trans-decl.c (gfc_get_symbol_decl): Extend condition that symbols
must be referenced to include unreferenced symbols in an interface
body.

PR fortran/20938
* trans-array.c (gfc_conv_resolve_dependencies): Add call to
gfc_are_equivalenced_arrays.
* symbol.c (gfc_free_equiv_infos, gfc_free_equiv_lists): New
functions. (gfc_free_namespace): Call them.
* trans-common.c (copy_equiv_list_to_ns): New function.
(add_equivalences): Call it.
* gfortran.h: Add equiv_lists to gfc_namespace and define
gfc_equiv_list and gfc_equiv_info.
* dependency.c (gfc_are_equivalenced_arrays): New function.
(gfc_check_dependency): Call it.
* dependency.h: Prototype for gfc_are_equivalenced_arrays.

2006-03-01  Paul Thomas  <pault@gcc.gnu.org>

* gfortran.dg/logical_dot_product.f90: New test.

PR fortran/26393
* gfortran.dg/used_interface_ref.f90: New test.

PR fortran/20938
* gfortran.dg/dependency_2.f90: New test.
* gfortran.fortran-torture/execute/where17.f90: New test.
* gfortran.fortran-torture/execute/where18.f90: New test.
* gfortran.fortran-torture/execute/where19.f90: New test.
* gfortran.fortran-torture/execute/where20.f90: New test.

From-SVN: r111616
19 files changed:
MAINTAINERS
gcc/fortran/ChangeLog
gcc/fortran/dependency.c
gcc/fortran/dependency.h
gcc/fortran/gfortran.h
gcc/fortran/iresolve.c
gcc/fortran/symbol.c
gcc/fortran/trans-array.c
gcc/fortran/trans-common.c
gcc/fortran/trans-decl.c
gcc/fortran/trans-intrinsic.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/dependency_2.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/logical_dot_product.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/used_interface_ref.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.fortran-torture/execute/where17.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.fortran-torture/execute/where18.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.fortran-torture/execute/where19.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.fortran-torture/execute/where20.f90 [new file with mode: 0644]