1! { dg-additional-options "-fdump-tree-original" }
2!
3! In OpenMP 5.0, 'order(concurrent)' does not apply to distribute
4! Ensure that it is rejected in GCC 11.
5!
6! Note: OpenMP 5.1 allows it; the GCC 12 testcase for it is gfortran.dg/gomp/order-5.f90
7
8subroutine f(a)
9implicit none
10integer :: i, thr
11!save :: thr
12integer :: a(:)
13
14!$omp distribute parallel do order(concurrent) private(thr)
15  do i = 1, 10
16    thr = 5
17    a(i) = thr
18  end do
19!$omp end distribute parallel do
20end
21
22! { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*order" "original" } }
23! { dg-final { scan-tree-dump "#pragma omp distribute\[\n\r\]" "original" } }
24! { dg-final { scan-tree-dump "#pragma omp parallel private\\(thr\\)" "original" } }
25! { dg-final { scan-tree-dump "#pragma omp for nowait order\\(concurrent\\)" "original" } }
26