diff options
Diffstat (limited to 'gcc-4.9/libgomp/testsuite/libgomp.fortran/target3.f90')
-rw-r--r-- | gcc-4.9/libgomp/testsuite/libgomp.fortran/target3.f90 | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/gcc-4.9/libgomp/testsuite/libgomp.fortran/target3.f90 b/gcc-4.9/libgomp/testsuite/libgomp.fortran/target3.f90 new file mode 100644 index 000000000..1f197acde --- /dev/null +++ b/gcc-4.9/libgomp/testsuite/libgomp.fortran/target3.f90 @@ -0,0 +1,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 |