diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/recursive_stack.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/recursive_stack.f90 | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/recursive_stack.f90 b/gcc/testsuite/gfortran.dg/recursive_stack.f90 new file mode 100644 index 000000000..c555c0d9f --- /dev/null +++ b/gcc/testsuite/gfortran.dg/recursive_stack.f90 @@ -0,0 +1,21 @@ +! { dg-do run } +! { dg-options "-frecursive" } +program recursive_stack + call foo (.true.) +end program recursive_stack + +subroutine foo (recurse) + logical recurse + integer iarray(100,100) + if (recurse) then + iarray(49,49) = 17 + call bar + if (iarray(49,49) .ne. 17) call abort + else + iarray(49,49) = 21 + end if +end subroutine foo + +subroutine bar + call foo (.false.) +end subroutine bar |