summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/proc_decl_14.f90
blob: d30ee7a9067be0ade700041affab403976dd607a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
! { 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