2 ! { dg-require-effective-target tls }
4 integer :: thrpriv
, thr
, i
, j
, s
, g1
, g2
, m
5 integer, dimension (6) :: p
9 !$omp threadprivate (/thrblk/, thrpriv)
11 !$omp parallel do default (none) &
12 !$omp & private (p) shared (s) ! { dg-error "enclosing parallel" }
14 call foo (thrpriv
) ! Predetermined - threadprivate
15 call foo (thr
) ! Predetermined - threadprivate
16 call foo (i
) ! Predetermined - omp do iteration var
17 do j
= 1, 64 ! Predetermined - sequential loop
18 call foo (j
) ! iteration variable
20 call bar ((/ (k
* 4, k
= 1, 8) /)) ! Predetermined - implied do
21 forall (l
= 1 : i
) &! Predetermined - forall indice
22 p(l
) = 6 ! Explicitly determined - private
23 call foo (s
) ! Explicitly determined - shared
24 call foo (g1
) ! { dg-error "not specified in" }
25 call foo (g2
) ! { dg-error "not specified in" }
26 call foo (m
) ! { dg-error "not specified in" }