| ! { dg-do compile } |
| subroutine test(b,c,d) |
| implicit none |
| integer, value, target :: b |
| integer, pointer :: c |
| integer, allocatable, target :: d |
| |
| integer, target :: a(5) |
| |
| !$omp target is_device_ptr(a) ! Valid since OpenMP 5.1 |
| !$omp end target |
| |
| !$omp target is_device_ptr(b) ! Valid since OpenMP 5.1 |
| !$omp end target |
| |
| !$omp target is_device_ptr(c) ! Valid since OpenMP 5.1 |
| !$omp end target |
| |
| !$omp target is_device_ptr(d) ! Valid since OpenMP 5.1 |
| !$omp end target |
| |
| !$omp target data map(a) use_device_addr(a) ! Should be okay |
| !$omp end target data |
| |
| !$omp target data map(c) use_device_ptr(c) ! Should be okay |
| !$omp end target data |
| end subroutine test |