diff options
author | Paul Thomas <pault@gcc.gnu.org> | 2005-10-23 06:59:17 +0000 |
---|---|---|
committer | Paul Thomas <pault@gcc.gnu.org> | 2005-10-23 06:59:17 +0000 |
commit | 2853e5127d7dcac713ad509ab44c5c0028037dca (patch) | |
tree | 9f2a2b5bf1f6c52982a3bc0ed7bb093beffbac06 /gcc/fortran/decl.c | |
parent | 1903e03eca6df0458899a4b3f89a505251d1e7c6 (diff) | |
download | gcc-2853e5127d7dcac713ad509ab44c5c0028037dca.zip gcc-2853e5127d7dcac713ad509ab44c5c0028037dca.tar.gz gcc-2853e5127d7dcac713ad509ab44c5c0028037dca.tar.bz2 |
re PR fortran/18022 (problem with structure and calling a function)
2005-10-23 Paul Thomas <pault@gcc.gnu.org>
PR fortran/18022
* trans-expr.c (gfc_trans_arrayfunc_assign): Return NULL
if there is a component ref during an array ref to force
use of temporary in assignment.
PR fortran/24311
PR fortran/24384
* fortran/iresolve.c (check_charlen_present): New function to
add a charlen to the typespec, in the case of constant
expressions.
(gfc_resolve_merge, gfc_resolve_spread): Call.the above.
(gfc_resolve_spread): Make calls to library functions that
handle the case of the spread intrinsic with a scalar source.
* libgfortran/intrinsics/spread_generic.c (spread_internal
_scalar): New function that handles the special case of spread
with a scalar source. This has interface functions -
(spread_scalar, spread_char_scalar): New functions to interface
with the calls specified in gfc_resolve_spread.
2005-10-23 Paul Thomas <pault@gcc.gnu.org>
PR fortran/18022
gfortran.dg/assign_func_dtcomp_1.f90: New test.
PR fortran/24311
gfortran.dg/merge_char_const.f90: New test.
PR fortran/24384
gfortran.dg/spread_scalar_source.f90: New test.
From-SVN: r105810
Diffstat (limited to 'gcc/fortran/decl.c')
0 files changed, 0 insertions, 0 deletions