! Offloading test that tests that if(present(a)) compiles and executes without ! causing any compilation errors, primarily a regression test that does not ! yield interesting results. ! REQUIRES: flang, amdgpu ! RUN: %libomptarget-compile-fortran-run-and-check-generic module mod implicit none contains subroutine routine(a) implicit none real, dimension(:), optional :: a integer :: i !$omp target data if(present(a)) map(alloc:a) do i = 1, 10 a(i) = i end do !$omp end target data end subroutine routine end module mod program main use mod real :: a(10) call routine(a) print *, a end program main ! CHECK: 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.