buildtools/gcc/libgomp/testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90
2022-07-15 14:33:44 +02:00

30 lines
534 B
Fortran

! Test OpenACC data regions with optional arguments passed by value.
! { dg-do run }
program test
implicit none
integer :: res
if (foo(27) .ne. 27) stop 1
if (foo(16, 18) .ne. 288) stop 2
contains
function foo(x, y)
integer, value :: x
integer, value, optional :: y
integer :: res, foo
!$acc data copyin(x, y) copyout(res)
!$acc parallel
res = x
if (present(y)) then
res = res * y
end if
!$acc end parallel
!$acc end data
foo = res
end function foo
end program test