blob: d9e2b138506e6bc9235d44e5c17b149bea1314f1 [file] [log] [blame]
! { dg-do run }
! { dg-additional-sources pr32627_driver.c }
! Verify that c_f_pointer exists for string arguments.
program main
use iso_c_binding
implicit none
interface
function get_c_string() bind(c)
use, intrinsic :: iso_c_binding, only: c_ptr
type(c_ptr) :: get_c_string
end function get_c_string
end interface
type, bind( c ) :: A
integer( c_int ) :: xc, yc
type( c_ptr ) :: str
end type
type( c_ptr ) :: x
type( A ), pointer :: fptr
type( A ), target :: my_a_type
character( len=8 ), pointer :: strptr
fptr => my_a_type
fptr%str = get_c_string()
call c_f_pointer( fptr%str, strptr )
print *, 'strptr is: ', strptr
end program main