| ! { dg-do run } | |
| ! { dg-options "-fcheck=recursion" } | |
| ! { dg-shouldfail "Recursion check" } | |
| ! | |
| ! { dg-output "Fortran runtime error: Recursive call to nonrecursive procedure 'master.0.f'" } | |
| ! | |
| ! PR fortran/39577 | |
| ! | |
| ! invalid - recursion | |
| module m | |
| implicit none | |
| contains | |
| subroutine f(rec) | |
| logical :: rec | |
| if(rec) then | |
| call h() | |
| end if | |
| return | |
| entry g() | |
| end subroutine f | |
| subroutine h() | |
| call f(.false.) | |
| end subroutine h | |
| end module m | |
| program test | |
| use m | |
| implicit none | |
| call f(.false.) | |
| call f(.true.) | |
| end program test |