1! { dg-do run }
2! { dg-additional-sources c_ptr_tests_8_funcs.c }
3program main
4use iso_c_binding, only: c_ptr
5implicit none
6interface
7  function create() bind(c)
8    use iso_c_binding, only: c_ptr
9    type(c_ptr) :: create
10  end function create
11  subroutine show(a) bind(c)
12    import :: c_ptr
13    type(c_ptr), VALUE :: a
14  end subroutine show
15end interface
16
17type(c_ptr) :: ptr
18ptr = create()
19call show(ptr)
20end program main
21