xref: /openbsd-src/gnu/gcc/libgomp/testsuite/libgomp.fortran/reference2.f90 (revision 404b540a9034ac75a6199ad1a32d1bbc7a0d4210)
1*404b540aSrobert! { dg-do run }
2*404b540aSrobert  real, dimension (5) :: b
3*404b540aSrobert  b = 5
4*404b540aSrobert  call foo (b)
5*404b540aSrobertcontains
6*404b540aSrobert  subroutine foo (a)
7*404b540aSrobert    real, dimension (5) :: a
8*404b540aSrobert    logical :: l
9*404b540aSrobert    l = .false.
10*404b540aSrobert!$omp parallel private (a) reduction (.or.:l)
11*404b540aSrobert    a = 15
12*404b540aSrobert    l = bar (a)
13*404b540aSrobert!$omp end parallel
14*404b540aSrobert    if (l) call abort
15*404b540aSrobert  end subroutine
16*404b540aSrobert  function bar (a)
17*404b540aSrobert    real, dimension (5) :: a
18*404b540aSrobert    logical :: bar
19*404b540aSrobert    bar = any (a .ne. 15)
20*404b540aSrobert  end function
21*404b540aSrobertend
22