This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/35680] [4.3/4.4 regression] ICE on invalid transfer in variable declaration
- From: "pault at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 2 Oct 2008 15:20:34 -0000
- Subject: [Bug fortran/35680] [4.3/4.4 regression] ICE on invalid transfer in variable declaration
- References: <bug-35680-10259@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #10 from pault at gcc dot gnu dot org 2008-10-02 15:20 -------
(In reply to comment #9)
As usual, the DEC manual puts in succinctly:
If MOLD is an array and SIZE is omitted, the result is a rank-one array. Its
size is the smallest that is possible to hold all of SOURCE".
This is what I have now implemented (and by the way, what I implemented for
simplify_transfer and the trans-intrinsic version....). However,
"If the physical representation of the result is smaller than SOURCE, the
result contains the right-most bits of SOURCE's bit pattern.
is a killer at this stage in the compilation, since the physical reprentation
of the result is unknown.
I might signal, I guess, that it is the actual argument of an inquiry
function.... Anyway, the logic is there, I just have to figure out where to
deploy it. Otherwise, I break transfer_array_intrinsic_2.f90, which has an
assignment from an over-large 'transfer' result.
*sigh*
Paul
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35680