1! { dg-do run }
2! { dg-options "-fcheck=recursion" }
3!
4! PR 42517: Bogus runtime error with -fopenmp -fcheck=recursion
5!
6! Contributed by Janus Weil <janus@gcc.gnu.org>
7
8implicit none
9integer :: i,s
10
11s=0
12!$omp parallel do private(i) shared(s)
13do i=1,10
14  call sub(i)
15end do
16!$omp end parallel do
17if (s/=55) stop 1
18
19contains
20
21  subroutine sub (n)
22    integer :: n
23!$omp atomic
24    s = s + n
25    print '(A,i3)',"loop =",n
26  end subroutine
27
28end
29