blob: 42da72961069b0461cabecbaee3d84f38e022867 (
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
|
type t
integer, pointer :: p2(:)
end type t
integer, target :: A(5)
integer, pointer :: p(:), p2(:)
type(t) :: var
allocate(p2(1:20))
p => A
var%p2 => p2
A = 0
p2 = 0
! These arrays "share original storage", so are unsupported. This will
! (correctly) fail with a non-shared address space.
!$omp target map(A(3:4), p2(4:8), p, var%p2)
A(3) = A(3) + 1
p2(4) = p2(4) + 2
!$omp end target
if (A(3).ne.1) stop 1
if (p2(4).ne.2) stop 2
end program
! { dg-shouldfail "" { offload_device_nonshared_as } }
|