1! PR fortran/78299
2! { dg-do compile }
3! { dg-additional-options "-fcheck=bounds" }
4
5program pr78299
6  integer, parameter :: n = 8
7  integer :: i, j
8  real :: x(n), y(n)
9  x = 1.0
10  y = 2.0
11  do j = 1, 9
12    !$omp parallel workshare
13    !$omp parallel default(shared)
14    !$omp do
15    do i = 1, n
16      x(i) = x(i) * y(9)		! { dg-warning "is out of bounds" }
17    end do
18    !$omp end do
19    !$omp end parallel
20    !$omp end parallel workshare
21  end do
22  do j = 1, 9
23    !$omp parallel workshare
24    !$omp parallel default(shared)
25    !$omp do schedule(static)
26    do i = 1, n
27      x(i) = x(i) * y(9)		! { dg-warning "is out of bounds" }
28    end do
29    !$omp end do
30    !$omp end parallel
31    !$omp end parallel workshare
32  end do
33  do j = 1, 9
34    !$omp parallel workshare
35    !$omp parallel default(shared)
36    !$omp do schedule(static, 2)
37    do i = 1, n
38      x(i) = x(i) * y(9)		! { dg-warning "is out of bounds" }
39    end do
40    !$omp end do
41    !$omp end parallel
42    !$omp end parallel workshare
43  end do
44  do j = 1, 9
45    !$omp parallel workshare
46    !$omp parallel default(shared)
47    !$omp do schedule(dynamic, 3)
48    do i = 1, n
49      x(i) = x(i) * y(9)		! { dg-warning "is out of bounds" }
50    end do
51    !$omp end do
52    !$omp end parallel
53    !$omp end parallel workshare
54  end do
55end
56