[Patch, fortran] PR24311 - MERGE with character arguments causing ICE in IO statements.
Paul Thomas
paulthomas2@wanadoo.fr
Tue Oct 11 23:37:00 GMT 2005
:ADDPATCH fortran:
This problem was caused by a patch to trans-io.c(gfc_trans_transfer),
which changed from transferring arrays element by element to passing the
array descriptor to the library. This failed because
gfc_conv_expr_descriptor was unable to handle the unusual(unique?)
phenomenon of a character array that has no charlen in the typespec.
This has been fixed by the direct method of writing a charlen in
iresolve.c(gfc_resolve_merge). This seems like the right place to do
this, on the grounds that, no matter what, the output from MERGE will be
correctly loaded with a character length.
Bubblestrapped and regtested on FC3/i686. OK for mainline and 4.0?
Paul T
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: merge.txt
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20051011/af1b90bf/attachment.txt>
More information about the Fortran
mailing list