xref: /llvm-project/flang/test/Semantics/OpenMP/copyin01.f90 (revision 0ee6646d6fb3b0b9a3655b14bd1cbc18a4e99600)
1! RUN: %python %S/../test_errors.py %s %flang -fopenmp
2! OpenMP Version 4.5
3! 2.15.4.1 copyin Clause
4! A list item that appears in a copyin clause must be threadprivate
5
6program omp_copyin
7
8  integer :: i
9  integer, save :: k
10  integer :: a(10), b(10)
11  common /cmn/ j
12
13  k = 10
14
15  !ERROR: Non-THREADPRIVATE object 'k' in COPYIN clause
16  !$omp parallel do copyin(k)
17  do i = 1, 10
18    a(i) = k + i
19    j = j + a(i)
20  end do
21  !$omp end parallel do
22
23  print *, a
24
25  !ERROR: Non-THREADPRIVATE object 'j' in COPYIN clause
26  !$omp parallel do copyin(/cmn/)
27  do i = 1, 10
28    b(i) = a(i) + j
29  end do
30  !$omp end parallel do
31
32  print *, b
33
34end program omp_copyin
35