http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56136
janus at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Keywords| |ice-on-valid-code Last reconfirmed| |2013-01-29 CC| |janus at gcc dot gnu.org Ever Confirmed|0 |1 Summary|Compiler fails when code |[OOP] ICE on |contains lhs-reallocation |lhs-reallocation of an |of an object with |object with overloaded |overloaded (elemental) |(elemental) assignment |Assignment operator |operator --- Comment #1 from janus at gcc dot gnu.org 2013-01-29 08:38:36 UTC --- Confirmed with 4.7 and trunk. 4.6 yields: A = A(1:50) 1 Error: Non-scalar base object at (1) currently not implemented This slightly different variant also ICEs with 4.6: MODULE A_TEST_M TYPE :: A_TYPE END TYPE INTERFACE ASSIGNMENT (=) MODULE PROCEDURE ASGN_A END INTERFACE CONTAINS ELEMENTAL SUBROUTINE ASGN_A (A, B) CLASS (A_TYPE), INTENT (INOUT) :: A CLASS (A_TYPE), INTENT (IN) :: B END SUBROUTINE END MODULE A_TEST_M PROGRAM ASGN_REALLOC_TEST USE A_TEST_M TYPE (A_TYPE), ALLOCATABLE :: A(:) ALLOCATE (A(100)) A = A(1:50) END PROGRAM