blob: df5ab26b8c26a11cc4b4f6a8d8eca72ad00d367a [file] [log] [blame]
! Test declare create with allocatable scalars.
! { dg-do run }
program main
use openacc
implicit none
integer, parameter :: n = 100
integer, allocatable :: a, c
integer :: i, b(n)
!$acc declare create (c)
allocate (a)
a = 50
!$acc parallel loop firstprivate(a)
do i = 1, n;
b(i) = a
end do
do i = 1, n
if (b(i) /= a) stop 1
end do
allocate (c)
a = 100
if (.not.acc_is_present(c)) stop 2
!$acc parallel num_gangs(1) present(c)
c = a
!$acc end parallel
!$acc update host(c)
if (c /= a) stop 3
!$acc parallel loop
do i = 1, n
b(i) = c
end do
do i = 1, n
if (b(i) /= a) stop 4
end do
deallocate (a, c)
end program main