1type t4
2  integer, allocatable :: quux(:)
3end type t4
4type t3
5  type(t4), pointer :: qux(:)
6end type t3
7type t2
8  type(t3), allocatable :: bar(:)
9end type t2
10type t
11  type(t2), allocatable :: foo(:)
12end type t
13
14type(t), allocatable :: c(:)
15
16!$acc enter data copyin(c(5)%foo(4)%bar(3)%qux(2)%quux(:))
17!$acc exit data delete(c(5)%foo(4)%bar(3)%qux(2)%quux(:))
18end
19