http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55960

--- Comment #6 from Sergio Losilla <loximann at gmail dot com> ---
Well, a very similar case, with a non-abstract type throws an ICE with gfortran
4.8.1:

module Foo_class
    type :: Foo
        integer :: n
    contains
        procedure :: n2  => Foo_n2
        procedure :: vec => Foo_vec
    end type

contains

    pure function Foo_n2(self)
        class(Foo), intent(in) :: self
        integer                :: Foo_n2

        Foo_n2 = self%n**2
    end function

    function Foo_vec(self)
        class(Foo) :: self
        real       :: Foo_vec(self%n2())

        Foo_vec=1.0
    end function

end module

Reply via email to