blob: 3113e1576875f043c58741363ba9a6b23ab516e9 [file] [log] [blame]
! { dg-do compile }
!
! PR 85537: [F08] Invalid memory reference at runtime when calling subroutine through procedure pointer
!
! Contributed by Tiziano MΓΌller <dev-zero@gentoo.org>
module m1
implicit none
contains
subroutine foo()
integer :: a
abstract interface
subroutine ibar()
end subroutine
end interface
procedure(ibar), pointer :: bar_ptr => bar_impl ! { dg-error "invalid in procedure pointer initialization" }
contains
subroutine bar_impl()
write (*,*) "foo"
a = a + 1
end subroutine
end subroutine
end module
module m2
implicit none
contains
subroutine foo(dbar)
interface
subroutine dbar()
end subroutine
end interface
procedure(dbar), pointer :: bar_ptr => dbar ! { dg-error "invalid in procedure pointer initialization" }
call bar_ptr()
end subroutine
end module