1! { dg-do run }
2!
3! PR 36704: Procedure pointer as function result
4!
5! Contributed by Janus Weil <janus@gcc.gnu.org>
6
7procedure(integer),pointer :: p
8p => foo()
9if (p(-1)/=1) call abort
10contains
11  function foo() result(bar)
12    procedure(integer),pointer :: bar
13    bar => iabs
14  end function
15end
16