http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46897
--- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> 2010-12-13 07:37:47 UTC --- Actually, I am less and less sure that this is a wrong-code issue. For type(t) :: infant, newchild infant = newchild one has the type "T" but the defined assignment is for "component". If one compiles the program in comment 2, none of my compilers uses the defined assignment. (When reading the program first, I somehow read that the defined assignment it for "t" and not for "component". I will later re-read the F2008 standard.)