blob: f54f7ef48e3120c6191c369fdca0f4c5bad57d43 [file] [edit]
! OpenMP offloading test that checks we correctly map zero sized arrays
! allowing subsequent presence checks to pass. This is legal in Fortran
! as zero sized arrays are a little bit different to the scenario where
! we have a not present argument or something that's not been allocated
! at all.
! REQUIRES: flang, amdgpu
! RUN: %libomptarget-compile-fortran-run-and-check-generic
program main
integer, allocatable :: array(:)
allocate(array(0))
!$omp target enter data map(to: array) 
! Despite there technically being no data, the
! presence check should legally return true here
! and not fail.
!$omp target map(present, alloc: array)
!$omp end target
print *, "PASS"
end program
! CHECK: PASS