[Bug fortran/45586] [4.6 Regression] ICE non-trivial conversion at assignment

mikael at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Jan 25 22:28:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45586

Mikael Morin <mikael at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |janus at gcc dot gnu.org

--- Comment #42 from Mikael Morin <mikael at gcc dot gnu.org> 2011-01-25 21:41:00 UTC ---
(In reply to comment #40)

There is indeed something fishy here. 
Your change does the right thing in the non-class case I think ; can't tell
about the class case. 
Janus ?

The code tries to match a reference to an inherited component but misses
references to the base types themselves.

In extends_1.f03, for:

new_person%service%education%person%ss = ss

the dump shows:

new_person->service.education.person.service.education.person.education.person.person.ss
= *ss;


Despite this, the middle-end manages to produce something runnable. :-)



More information about the Gcc-bugs mailing list