aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/libgomp/testsuite/libgomp.fortran/target3.f90
blob: 1f197acdef7b8d9125bb60f956f5f38b72d5fc1f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
! { dg-do run }

module target3
contains
  subroutine foo (f, g)
    integer :: n
    integer, pointer :: f, g(:)
    integer, pointer :: j, k(:)
    logical :: r
    nullify (j)
    k => null ()
    !$omp target map (tofrom: f, g, j, k) map (from: r)
      r = associated (f) .or. associated (g)
      r = r .or. associated (j) .or. associated (k)
    !$omp end target
    if (r) call abort
    !$omp target
      r = associated (f) .or. associated (g)
      r = r .or. associated (j) .or. associated (k)
    !$omp end target
    if (r) call abort
  end subroutine foo
end module target3
  use target3, only : foo
  integer, pointer :: f, g(:)
  f => null ()
  nullify (g)
  call foo (f, g)
end