! Offloading test for target nested inside a target data region ! REQUIRES: flang, amdgpu ! RUN: %libomptarget-compile-fortran-run-and-check-generic program main integer :: A(10), B(10), C(10) do I = 1, 10 A(I) = 1 B(I) = 2 end do !$omp target data map(to: A, B) map(alloc: C) !$omp target map(from: C) do I = 1, 10 C(I) = A(I) + B(I) ! assigns 3, A:1 + B:2 end do !$omp end target !$omp target update from(C) ! updates C device -> host !$omp end target data print *, C ! should be all 3's end program ! CHECK: 3 3 3 3 3 3 3 3 3 3