http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59450
janus at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ice-on-valid-code Status|UNCONFIRMED |NEW Last reconfirmed| |2013-12-10 CC| |janus at gcc dot gnu.org Summary|ICE for Array Valued |[OOP] ICE for Array Valued |Function combined with |Function combined with |Deferred Specification |Deferred Specification |Function |Function Ever confirmed|0 |1 --- Comment #1 from janus at gcc dot gnu.org --- Confirmed. Thanks for the bug report. Here is a variant with a non-abstract class which shows the same ICE (with every version I tried - from 4.6 to trunk): module classes implicit none type :: base_class contains procedure, nopass :: get_num end type contains pure integer function get_num() end function function get_array( this ) result(array) class(base_class), intent(in) :: this integer, dimension( this%get_num() ) :: array end function end module