! { dg-do compile } | |
! PR fortran/35830 | |
! | |
abstract interface | |
function ptrfunc() | |
integer, pointer :: ptrfunc | |
end function ptrfunc | |
elemental subroutine elem(a) | |
integer,intent(in) :: a | |
end subroutine elem | |
function dims() | |
integer :: dims(3) | |
end function dims | |
end interface | |
procedure(ptrfunc) :: func_a | |
procedure(elem) :: func_b | |
procedure(dims) :: func_c | |
integer, pointer :: ptr | |
integer :: array(3) | |
ptr => func_a() | |
call func_b([1,2,3]) | |
array = func_c() | |
end |