1program p
2   integer :: i, j, k
3   real :: x
4   !$omp parallel do collapse(3)
5   do i = 1, 8
6      do j = 1, 8
7        do k = 1, 8
8        end do
9        x = 5  ! { dg-error "loops not perfectly nested" }
10      end do
11   end do
12   !$omp parallel do ordered(3)
13   do i = 1, 8
14      do j = 1, 8
15        do k = 1, 8
16        end do
17      end do
18      x = 5  ! { dg-error "loops not perfectly nested" }
19   end do
20   !$omp parallel do collapse(2)  ! { dg-error "not enough DO loops for collapsed" }
21   do i = 1, 8
22      x = 5
23      do j = 1, 8
24      end do
25   end do
26   !$omp parallel do ordered(2)  ! { dg-error "not enough DO loops for collapsed" }
27   do i = 1, 8
28      x = 5
29      do j = 1, 8
30      end do
31   end do
32end
33