blob: f4958b81d6ce265a29a6dc7d3f948cdbbed1c50f [file] [log] [blame]
! { dg-do compile }
! { dg-require-effective-target tls }
integer :: thrpriv, thr, i, j, s, g1, g2, m
integer, dimension (6) :: p
common /thrblk/ thr
common /gblk/ g1
save thrpriv, g2
!$omp threadprivate (/thrblk/, thrpriv)
s = 1
!$omp parallel do default (none) &
!$omp & private (p) shared (s) ! { dg-message "note: enclosing 'parallel'" }
do i = 1, 64
call foo (thrpriv) ! Predetermined - threadprivate
call foo (thr) ! Predetermined - threadprivate
call foo (i) ! Predetermined - omp do iteration var
do j = 1, 64 ! Predetermined - sequential loop
call foo (j) ! iteration variable
end do
call bar ((/ (k * 4, k = 1, 8) /)) ! Predetermined - implied do
forall (l = 1 : i) &! Predetermined - forall indice
p(l) = 6 ! Explicitly determined - private
call foo (s) ! Explicitly determined - shared
call foo (g1) ! { dg-error "not specified in" }
call foo (g2) ! { dg-error "not specified in" }
call foo (m) ! { dg-error "not specified in" }
end do
end