1! { dg-do compile } 2 3 integer :: r 4 r = 0 5 call foo (r) 6 if (r /= 11) STOP 1 7contains 8 subroutine foo (r) 9 integer :: i, r 10 !$omp parallel 11 !$omp single 12 !$omp target teams distribute parallel do reduction (+: r) 13 do i = 1, 10 14 r = r + 1 15 end do 16 r = r + 1 17 !$omp end single 18 !$omp end parallel 19 end subroutine 20end 21