blob: e51e5c9f97e03fe6df38193836e6defbf8dc0ade [file] [log] [blame] [edit]
! RUN: %python %S/test_errors.py %s %flang_fc1 -fopenacc
subroutine sub1()
real, allocatable, device :: a(:)
integer :: i
!ERROR: Unsupported CUDA data transfer
a = a + 10 ! Illegal expression according to 3.4.2
!$cuf kernel do
do i = 1, 10
a(i) = a(i) + 10 ! ok in cuf kernel do
end do
!$acc parallel loop
do i = 1, 10
a(i) = a(i) + 10 ! ok in openacc combined construct
end do
!$acc serial loop
do i = 1, 10
a(i) = a(i) + 10 ! ok in openacc combined construct
end do
!$acc kernels loop
do i = 1, 10
a(i) = a(i) + 10 ! ok in openacc combined construct
end do
!$acc parallel
!$acc loop
do i = 1, 10
a(i) = a(i) + 10 ! ok in nested openacc construct
end do
!$acc end parallel
!$acc kernels
!$acc loop
do i = 1, 10
a(i) = a(i) + 10 ! ok in nested openacc construct
end do
!$acc end kernels
!$acc serial
!$acc loop
do i = 1, 10
a(i) = a(i) + 10 ! ok in nested openacc construct
end do
!$acc end serial
!$acc loop
do i = 1, 10
a(i) = a(i) + 10 ! ok acc loop
end do
!$acc data
do i = 1, 10
!ERROR: Unsupported CUDA data transfer
a(i) = a(i) + 10
end do
!$acc end data
end subroutine