aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.8/gcc/testsuite/gfortran.dg/gomp/pr59467.f90
blob: e69c9eb49a02fbf3cdd45ce144bba8fa32e4e4e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
! PR libgomp/59467
! { dg-do compile }
! { dg-options "-fopenmp" }
  FUNCTION t()
    INTEGER :: a, b, t
    a = 0
    b = 0
    !$OMP PARALLEL REDUCTION(+:b)
      !$OMP SINGLE	! { dg-error "is not threadprivate or private in outer context" }
        !$OMP ATOMIC WRITE
        a = 6
      !$OMP END SINGLE COPYPRIVATE (a)
      b = a
    !$OMP END PARALLEL
    t = b
    b = 0
    !$OMP PARALLEL REDUCTION(+:b)
      !$OMP SINGLE
        !$OMP ATOMIC WRITE
        b = 6
      !$OMP END SINGLE COPYPRIVATE (b)
    !$OMP END PARALLEL
    t = t + b
  END FUNCTION