re PR fortran/25031 ([4.1 only] Allocatable array can be reallocated.)
authorThomas Koenig <Thomas.Koenig@online.de>
Fri, 3 Mar 2006 16:18:46 +0000 (16:18 +0000)
committerThomas Koenig <tkoenig@gcc.gnu.org>
Fri, 3 Mar 2006 16:18:46 +0000 (16:18 +0000)
commit5b725b8d04fff8583103bbea88f3d42f5443367d
tree2053327438b596f44709a80d2095a44b82bdb8f7
parent9a75ede07ca08c69fd38acafea04cc2e1a7bfd10
re PR fortran/25031 ([4.1 only] Allocatable array can be reallocated.)

2006-03-03  Thomas Koenig  <Thomas.Koenig@online.de>

PR fortran/25031
* trans-array.h:  Adjust gfc_array_allocate prototype.
* trans-array.c (gfc_array_allocate):  Change type of
gfc_array_allocatate to bool.  Function returns true if
it operates on an array.  Change second argument to gfc_expr.
Find last reference in chain.
If the function operates on an allocatable array, emit call to
allocate_array() or allocate64_array().
* trans-stmt.c (gfc_trans_allocate):  Code to follow to last
reference has been moved to gfc_array_allocate.
* trans.h:  Add declaration for gfor_fndecl_allocate_array and
gfor_fndecl_allocate64_array.
(gfc_build_builtin_function_decls):  Add gfor_fndecl_allocate_array
and gfor_fndecl_allocate64_array.

2006-03-03  Thomas Koenig  <Thomas.Koenig@online.de>

PR fortran/25031
* runtime/memory.c:  Adjust copyright years.
(allocate_array):  New function.
(allocate64_array):  New function.
* libgfortran.h (error_codes):  Add ERROR_ALLOCATION.

2006-03-03  Thomas Koenig  <Thomas.Koenig@online.de>

PR fortran/25031
* multiple_allocation_1.f90:  New test.

From-SVN: r111677
gcc/fortran/ChangeLog
gcc/fortran/trans-array.c
gcc/fortran/trans-array.h
gcc/fortran/trans-decl.c
gcc/fortran/trans-stmt.c
gcc/fortran/trans.h
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/multiple_allocation_1.f90 [new file with mode: 0644]
libgfortran/ChangeLog
libgfortran/libgfortran.h
libgfortran/runtime/memory.c