------- Comment #2 from janus at gcc dot gnu dot org 2010-06-17 22:34 ------- Reduced test case:
module ice6 type :: t contains procedure :: get_array generic :: get_something => get_array end type contains function get_array(this) class(t) :: this real,dimension(2) :: get_array end function get_array subroutine do_something(this) class(t) :: this print *,this%get_something() end subroutine do_something end module ice6 The problem is not related to passing the TBP as an argument, but the TBP has to be generic and array-valued. -- janus at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|[4.6 Regression] [OOP] ICE |[4.6 Regression] [OOP] ICE |in gimplify_expr when |in gimplify_expr with array- |passing generic function as |valued generic TBP |argument | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44565