1! xfailed due to PR 101308 2! PR 101305 3! PR 100914 4! { dg-do run } 5! { dg-require-effective-target fortran_real_c_float128 } 6! { dg-additional-sources "typecodes-scalar-float128-c.c dump-descriptors.c" } 7! { dg-additional-options "-g" } 8! 9! This program tests that the vendor extension kind constants provided by 10! gfortran's ISO_C_BINDING module result in the right type field in 11! arguments passed by descriptor,also matching the size of the corresponding 12! C type. We use pointers to force the use of a descriptor. 13 14program testit 15 use iso_c_binding 16 implicit none 17 18 interface 19 20 subroutine ctest (arg_float128, arg_complex128) bind (c) 21 use iso_c_binding 22 real(C_FLOAT128), pointer :: arg_float128 23 complex(C_FLOAT128_COMPLEX), pointer :: arg_complex128 24 end subroutine 25 26 end interface 27 28 real(C_FLOAT128), pointer :: var_float128 29 complex(C_FLOAT128_COMPLEX), pointer :: var_complex128 30 31 nullify (var_float128, var_complex128) 32 call ctest (var_float128, var_complex128) 33 34end program 35