1! { dg-do compile }
2! { dg-options "-std=f2003 " }
3!
4! PR fortran/46100
5!
6! Pointer function as definable actual argument
7! - a Fortran 2008 feature
8!
9integer, target :: tgt
10call one (two ()) ! { dg-error "Fortran 2008: Pointer functions" }
11if (tgt /= 774) STOP 1
12contains
13  subroutine one (x)
14    integer, intent(inout) :: x
15    if (x /= 34) STOP 2
16    x = 774
17  end subroutine one
18  function two ()
19    integer, pointer :: two
20    two => tgt
21    two = 34
22  end function two
23end
24
25