Intrinsic assigment of derived types containing components with user defined assignment

For whatever it’s worth, the wording in the standard informs me the behavior of the program processed using the Intel compiler conforms. I suggest you submit support requests with the vendors of the other two compilers.

As pointed out in the other comment, section 10.2.1.3 Interpretation of intrinsic assignments provides the basis for the behavior to be as you expect, especially paragraph 13 on lines 4 thru’ 8 on page 163, “An intrinsic assignment where the variable is of derived type is performed as if each component of the variable were assigned from the corresponding component of expr using … defined assignment for each nonpointer nonallocatable component of a type that has a type-bound defined assignment consistent with the component, intrinsic assignment for each other nonpointer nonallocatable component …” (emphasis mine).

P.S.> I personally think this is a situation where Intel is first off-the-block when it comes to bug fixes following the Fortran 2008 feature introduction of allocation-upon-assignment of polymorphic objects; the others are getting there. Almost all the implementations appear to have started off their work with the semantics in Fortran 2003 that did not allow this and the relevant sections had to be revised later with varying success rate, as can be here unfortunately.