1! { dg-do compile }
2! { dg-options "-fopenmp" }
3
4subroutine foo
5  integer :: i
6  !$omp do schedule (nonmonotonic: static, 2)
7  do i = 0, 64
8  end do
9  !$omp do schedule (nonmonotonic : static)
10  do i = 0, 64
11  end do
12  !$omp do schedule (nonmonotonic : runtime)
13  do i = 0, 64
14  end do
15  !$omp do schedule (nonmonotonic : auto)
16  do i = 0, 64
17  end do
18  !$omp do schedule (nonmonotonic : dynamic) ordered	! { dg-error "NONMONOTONIC schedule modifier specified with ORDERED clause" }
19  do i = 0, 64
20    !$omp ordered
21    !$omp end ordered
22  end do
23  !$omp do ordered schedule(nonmonotonic : dynamic, 5)	! { dg-error "NONMONOTONIC schedule modifier specified with ORDERED clause" }
24  do i = 0, 64
25    !$omp ordered
26    !$omp end ordered
27  end do
28  !$omp do schedule (nonmonotonic : guided) ordered(1)	! { dg-error "NONMONOTONIC schedule modifier specified with ORDERED clause" }
29  do i = 0, 64
30    !$omp ordered depend(sink: i - 1)
31    !$omp ordered depend(source)
32  end do
33  !$omp do ordered(1) schedule(nonmonotonic : guided, 2)	! { dg-error "NONMONOTONIC schedule modifier specified with ORDERED clause" }
34  do i = 0, 64
35    !$omp ordered depend(source)
36    !$ordered depend(sink: i - 1)
37  end do
38  !$omp do schedule (nonmonotonic , monotonic : dynamic)	! { dg-error "Both MONOTONIC and NONMONOTONIC schedule modifiers specified" }
39  do i = 0, 64
40  end do
41  !$omp do schedule (monotonic,nonmonotonic:dynamic)	! { dg-error "Both MONOTONIC and NONMONOTONIC schedule modifiers specified" }
42  do i = 0, 64
43  end do
44end subroutine foo
45