http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58007
--- Comment #6 from Mikael Morin <mikael at gcc dot gnu.org> --- further reduced test below. Fails with trunk-20130619 and 4.7.3 here. And works with 4.8-20130416. module matrix type :: sparse_matrix integer :: max_degree end type end module module bsr use matrix type, extends(sparse_matrix) :: bsr_matrix contains procedure :: get_neighbors end type contains function get_neighbors (A) class(bsr_matrix), intent(in) :: A integer :: get_neighbors(A%max_degree) end function end module program main use matrix use bsr end