https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113808
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
With the following I don't see things going wrong, but we end up with the loop
having the STOP exit last instead and thus a PEELED case.
function bar (n) result (k)
integer :: n, k
!$omp simd lastprivate(k)
do k = 1, n + 41
if (k > 11 + 41 .or. k < 1) error stop
end do
end
program main
integer :: n, i,k
integer :: bar
n = 11
k = bar (n)
if (k /= 53) then
print *, k, 53
error stop
endif
end