gcc/fortran/:
[official-gcc.git] / gcc / testsuite / gfortran.dg / recursive_check_13.f90
blobed222a322ec5046ee06560c1c10a6be1a9e95ff9
1 ! { dg-do run }
2 ! { dg-options "-fcheck=recursion" }
3 ! { dg-shouldfail "Recursion check" }
5 ! { dg-output "Fortran runtime error: Recursive call to nonrecursive procedure 'master.0.f'" }
7 ! PR fortran/39577
9 ! invalid - recursion
10 module m
11 implicit none
12 contains
13 subroutine f(rec)
14 logical :: rec
15 if(rec) then
16 call h()
17 end if
18 return
19 entry g()
20 end subroutine f
21 subroutine h()
22 call f(.false.)
23 end subroutine h
24 end module m
26 program test
27 use m
28 implicit none
29 call f(.false.)
30 call f(.true.)
31 end program test
32 ! { dg-final { cleanup-modules "m" } }