2007-10-20 Paul Thomas <pault@gcc.gnu.org>
commit822813343b5b62b6c04b6052c7bc97943ac6a7a6
authorpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 20 Oct 2007 09:27:09 +0000 (20 09:27 +0000)
committerpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 20 Oct 2007 09:27:09 +0000 (20 09:27 +0000)
tree3fa345cde095245a568f75f1889395bfe390ddd2
parentad2e3319ecdf74529792d1e760ca552a8dc81fb4
2007-10-20  Paul Thomas  <pault@gcc.gnu.org>
    FX Coudert <fxcoudert@gcc.gnu.org>

PR fortran/31608
* trans-array.c (gfc_conv_expr_descriptor): For all except
indirect references, use gfc_trans_scalar_assign instead of
gfc_add_modify_expr.
* iresolve.c (check_charlen_present): Separate creation of cl
if necessary and add code to treat an EXPR_ARRAY.
(gfc_resolve_char_achar): New function.
(gfc_resolve_achar, gfc_resolve_char): Call it.
(gfc_resolve_transfer): If the MOLD expression does not have a
character length expression, get it from a constant length.

2007-10-20  Paul Thomas  <pault@gcc.gnu.org>
    FX Coudert <fxcoudert@gcc.gnu.org>

PR fortran/31608
* gfortran.dg/char_cast_1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129505 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/fortran/ChangeLog
gcc/fortran/iresolve.c
gcc/fortran/trans-array.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/char_cast_1.f90 [new file with mode: 0644]