PR c++/86342 - -Wdeprecated-copy and system headers.
[official-gcc.git] / libgomp / testsuite / libgomp.oacc-fortran / firstprivate-1.f90
blob054d5dd459af86811a319049bb3020d1969ee598
1 ! { dg-do run }
3 program firstprivate
4 integer, parameter :: Nupper=100
5 integer :: a, b(Nupper), c, d, n
6 include "openacc_lib.h"
8 if (acc_get_device_type () .ne. acc_device_host) then
9 n = Nupper
10 else
11 n = 1
12 end if
14 b(:) = -1
15 a = 5
17 !$acc parallel firstprivate (a) num_gangs (n)
18 !$acc loop gang
19 do i = 1, n
20 a = a + i
21 b(i) = a
22 end do
23 !$acc end parallel
25 do i = 1, n
26 if (b(i) .ne. i + a) STOP 1
27 end do
29 !$acc data copy (a)
30 !$acc parallel firstprivate (a) copyout (c)
31 a = 10
32 c = a
33 !$acc end parallel
35 !$acc parallel copyout (d) present (a)
36 d = a
37 !$acc end parallel
38 !$acc end data
40 if (c .ne. 10) STOP 2
41 if (d .ne. 5) STOP 3
42 end program firstprivate