summaryrefslogtreecommitdiff
path: root/libgomp/testsuite/libgomp.fortran/target-enter-data-3.f90
blob: 1b3cdf9e76aca47bfb7304a3e163f1ca6e90c6b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
implicit none
type t
  integer :: dummy
  integer, pointer :: p1(:), p2(:)
  integer :: dummy2
end type t
type(t) :: var
integer :: i
allocate(var%p1(5),var%p2(2:4))
var%p1 = [22,53,28,6,4]
var%p2 = [46,679,54]

!$omp target enter data map(to:var%p1, var%p2)
!$omp target
  if (.not.associated(var%p1).or.lbound(var%p1,1)/=1.or.ubound(var%p1,1)/=5) stop 1
  if (.not.associated(var%p2).or.lbound(var%p2,1)/=2.or.ubound(var%p2,1)/=4) stop 2
  if (any (var%p1 /= [22,53,28,6,4])) stop 3
  if (any (var%p2 /= [46,679,54])) stop 4
!$omp end target
!$omp target exit data map(from:var%p1, var%p2)
end