! { dg-do compile } | |
SUBROUTINE A31_1(A, B, X, Y, N) | |
INTEGER N | |
REAL X(*), Y(*), A, B | |
!$OMP PARALLEL DO PRIVATE(I) SHARED(X, N) REDUCTION(+:A) | |
!$OMP& REDUCTION(MIN:B) | |
DO I=1,N | |
A = A + X(I) | |
B = MIN(B, Y(I)) | |
! Note that some reductions can be expressed in | |
! other forms. For example, the MIN could be expressed as | |
! IF (B > Y(I)) B = Y(I) | |
END DO | |
END SUBROUTINE A31_1 |