comparison gcc/testsuite/gfortran.dg/c_loc_tests_14.f90 @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children
comparison
equal deleted inserted replaced
68:561a7518be6b 111:04ced10e8804
1 ! { dg-do compile }
2 !
3 ! PR fortran/38536
4 ! Accept as argument to C_LOC a subcomponent accessed through a pointer.
5
6 USE ISO_C_BINDING
7
8 IMPLICIT NONE
9 TYPE test3
10 INTEGER, DIMENSION(5) :: b
11 END TYPE test3
12
13 TYPE test2
14 TYPE(test3), DIMENSION(:), POINTER :: a
15 END TYPE test2
16
17 TYPE test
18 TYPE(test2), DIMENSION(2) :: c
19 END TYPE test
20
21 TYPE(test) :: chrScalar
22 TYPE(C_PTR) :: f_ptr
23 TYPE(test3), TARGET :: d(3)
24
25
26 chrScalar%c(1)%a => d
27 f_ptr = C_LOC(chrScalar%c(1)%a(1)%b(1))
28 end
29