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



janus at gcc dot gnu.org changed:



           What    |Removed                     |Added

----------------------------------------------------------------------------

           Keywords|                            |ice-on-invalid-code

             Status|UNCONFIRMED                 |NEW

   Last reconfirmed|                            |2013-02-18

                 CC|                            |janus at gcc dot gnu.org

            Summary|ICE with allocatable        |[OOP] ICE with allocatable

                   |function result in a        |function result in a

                   |type-bound procedure        |procedure-pointer component

     Ever Confirmed|0                           |1



--- Comment #1 from janus at gcc dot gnu.org 2013-02-18 22:14:55 UTC ---

ICE confirmed with 4.6, 4.7 and trunk. Reduced test case:





module VolumeSources

  implicit none



  type :: TGeometricShape

  end type



  type :: TVolumeSourceBody

    class(TGeometricShape), allocatable :: GeometricShape

    procedure(scalar_flux_interface), pointer :: get_scalar_flux

  end type TVolumeSourceBody



  abstract interface

    function scalar_flux_interface(self) result(res)

      import

      real, allocatable :: res(:)

      class(TVolumeSourceBody), intent(in) :: self

    end function

  end interface



end module





Note: 'get_scalar_flux' is actually not a type-bound procedure, but a

procedure-pointer component.

Reply via email to