c_ptr_tests_11.f03

来自「用于进行gcc测试」· F03 代码 · 共 43 行

F03
43
字号
! { 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_fdfsolverinterface  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_jacend interfacecontains  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_jacend module fgslmodule 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 tcontains  subroutine func(a)    type(t), intent(out) :: a  end subroutine funcend module m! { dg-final { cleanup-modules "fgsl m" } } 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?