! RUN: %python %S/../test_errors.py %s %flang_fc1 -fopenmp ! OpenMP Version 4.5 ! 2.15.4.2 copyprivate Clause ! All list items that appear in the copyprivate clause must be either ! threadprivate or private in the enclosing context. program omp_copyprivate integer :: a(10), b(10) integer, save :: k !$omp threadprivate(k) k = 10 a = 10 b = a + 10 !$omp parallel !$omp single a = a + k !$omp end single copyprivate(k) !$omp single b = b - a !ERROR: COPYPRIVATE variable 'b' is not PRIVATE or THREADPRIVATE in outer context !$omp end single copyprivate(b) !$omp end parallel !$omp parallel sections private(a) !$omp section !$omp parallel !$omp single a = a * b + k !ERROR: COPYPRIVATE variable 'a' is not PRIVATE or THREADPRIVATE in outer context !$omp end single copyprivate(a) !$omp end parallel !$omp end parallel sections print *, a, b end program omp_copyprivate