------- Comment #7 from janus at gcc dot gnu dot org 2009-12-28 14:15 ------- Here is a reduced version of the test case in comment #6:
module concrete_vector type :: trivial_vector_type end type class(trivial_vector_type), pointer :: this end module concrete_vector module concrete_gradient contains subroutine my_to_vector (v) use concrete_vector class(trivial_vector_type) :: v select type (v) class is (trivial_vector_type) end select end subroutine end module concrete_gradient module concrete_inner_product use concrete_vector use concrete_gradient contains real function my_dot_v_v (a) class(trivial_vector_type) :: a select type (a) class is (trivial_vector_type) end select end function end module concrete_inner_product -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42353