Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gfortran.dg/c_ptr_tests_11.f03 @ 152:2b5abeee2509
update gcc11
author | anatofuz |
---|---|
date | Mon, 25 May 2020 07:50:57 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
! { dg-do compile } ! Verify that initialization of c_ptr components works. module fgsl use, intrinsic :: iso_c_binding implicit none type, public :: fgsl_matrix private type(c_ptr) :: gsl_matrix = c_null_ptr end type fgsl_matrix type, public :: fgsl_multifit_fdfsolver private type(c_ptr) :: gsl_multifit_fdfsolver = c_null_ptr end type fgsl_multifit_fdfsolver interface function gsl_multifit_fdfsolver_jac(s) bind(c) import :: c_ptr type(c_ptr), value :: s type(c_ptr) :: gsl_multifit_fdfsolver_jac end function gsl_multifit_fdfsolver_jac end interface contains function fgsl_multifit_fdfsolver_jac(s) type(fgsl_multifit_fdfsolver), intent(in) :: s type(fgsl_matrix) :: fgsl_multifit_fdfsolver_jac fgsl_multifit_fdfsolver_jac%gsl_matrix = & gsl_multifit_fdfsolver_jac(s%gsl_multifit_fdfsolver) end function fgsl_multifit_fdfsolver_jac end module fgsl module m use, intrinsic :: iso_c_binding, only: c_ptr, c_null_ptr implicit none type t type(c_ptr) :: matrix = c_null_ptr end type t contains subroutine func(a) type(t), intent(out) :: a end subroutine func end module m