[Bug fortran/55057] [OOP] wrong result with abstract type

janus at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Oct 25 14:52:00 GMT 2012


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

--- Comment #3 from janus at gcc dot gnu.org 2012-10-25 14:51:44 UTC ---
Here is a reduced test case, which is not usable as a runtime test, but shows
the wrong dump:


module m

 implicit none

 type :: t1
 end type

 type :: t2
   class(t1), allocatable :: work(:)
 end type

contains

 subroutine alt(x)
  class(t1), intent(in) :: x
 end subroutine

 subroutine sub1(a)
  type(t2) :: a
  call alt(a%work(1))
 end subroutine

 subroutine sub2(b)
  class(t2) :: b
  call alt(b%work(1))
 end subroutine

end module


The dump of 'sub2' is wrong in 4.8, while 'sub1' is ok. With 4.7, both are
wrong.



More information about the Gcc-bugs mailing list