27 lines
497 B
Fortran
27 lines
497 B
Fortran
|
! PR fortran/81841
|
||
|
! { dg-do run }
|
||
|
|
||
|
block data
|
||
|
integer :: a
|
||
|
real :: b(2)
|
||
|
common /c/ a, b
|
||
|
!$omp threadprivate (/c/)
|
||
|
data a / 32 /
|
||
|
data b /2*1./
|
||
|
end
|
||
|
|
||
|
program pr81841
|
||
|
use omp_lib
|
||
|
integer :: e
|
||
|
real :: f(2)
|
||
|
common /c/ e, f
|
||
|
!$omp threadprivate (/c/)
|
||
|
!$omp parallel num_threads(8)
|
||
|
if ((e /= 32) .or. any(f /= 1.)) call abort
|
||
|
e = omp_get_thread_num ()
|
||
|
f = e + 19.
|
||
|
!$omp barrier
|
||
|
if ((e /= omp_get_thread_num ()) .or. any(f /= e + 19.)) call abort
|
||
|
!$omp end parallel
|
||
|
end
|