1! { dg-do run }
2! { dg-require-effective-target tls_runtime }
3!$ use omp_lib
4
5  integer, save, allocatable :: a(:, :)
6  logical :: l
7!$omp threadprivate (a)
8  if (allocated (a)) STOP 1
9  l = .false.
10!$omp parallel copyin (a) num_threads (4) reduction(.or.:l)
11  l = l.or.allocated (a)
12!$omp end parallel
13  if (l.or.allocated (a)) STOP 2
14end
15