This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/31610] [4.3 Regression] ICE with transfer, merge in gfc_conv_expr_descriptor
- From: "dominiq at lps dot ens dot fr" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 26 Jan 2008 14:41:03 -0000
- Subject: [Bug fortran/31610] [4.3 Regression] ICE with transfer, merge in gfc_conv_expr_descriptor
- References: <bug-31610-6528@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #19 from dominiq at lps dot ens dot fr 2008-01-26 14:41 -------
I confirm that the ICEs are gone, however the original test case and the one in
comment #3 ouput garbage: 'A^@^@^@@sÐ@^E^@^@^@^T^@^@^@^U^G^@' for the latter on
i686-apple-darwin9.
Note that g95 gives
In file pr31610.f90:3
string = transfer(merge (transfer(achar (ichar('A')), "x", len(string)), st
1
Warning (148): Not enough data to produce the requested array size in TRANSFER
function at (1)
In file pr31610.f90:3
string = transfer(merge (transfer(achar (ichar('A')), "x", len(string)), st
1
Error: MERGE intrinsic at (1) has different character lengths
for the original test and
In file pr31610_1.f90:1
write(*,*) "'", transfer("A", "x", 20), "'"
1
Warning (148): Not enough data to produce the requested array size in TRANSFER
function at (1)
for the reduced one, the output being
'A^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@'.
I hope this may help to answer the question:
> It points to something being wrong with the scalarization of operators but I am
> blowed if I can see what it is.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31610