re PR fortran/37779 (Missing RECURSIVE not detected)
authorDaniel Kraft <d@domob.eu>
Sun, 30 Nov 2008 20:36:10 +0000 (21:36 +0100)
committerDaniel Kraft <domob@gcc.gnu.org>
Sun, 30 Nov 2008 20:36:10 +0000 (21:36 +0100)
commit1933ba0f5dc728f554beb675093126aaef7fbb5a
treedd6e71838000e064f6aa7cc84b9cf68d917569ba
parent72b415c58668d3bd757fb8ec3be70302c339d544
re PR fortran/37779 (Missing RECURSIVE not detected)

2008-11-30  Daniel Kraft  <d@domob.eu>

PR fortran/37779
* gfortran.h (struct gfc_entry_list): Fixed typo in comment.
* resolve.c (is_illegal_recursion): New method.
(resolve_procedure_expression): Use new is_illegal_recursion instead of
direct check and handle function symbols correctly.
(resolve_actual_arglist): Removed useless recursion check.
(resolve_function): Use is_illegal_recursion instead of direct check.
(resolve_call): Ditto.

2008-11-30  Daniel Kraft  <d@domob.eu>

PR fortran/37779
* gfortran.dg/recursive_check_1.f: Changed expected error message to
the more general new one.
* gfortran.dg/recursive_check_2.f90: Ditto.
* gfortran.dg/entry_18.f90: Ditto.
* gfortran.dg/recursive_check_4.f03: Do "the same" check also for
FUNCTIONS, as this is different in details from SUBROUTINES.
* gfortran.dg/recursive_check_6.f03: New test.

From-SVN: r142299
gcc/fortran/ChangeLog
gcc/fortran/gfortran.h
gcc/fortran/resolve.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/entry_18.f90
gcc/testsuite/gfortran.dg/recursive_check_1.f
gcc/testsuite/gfortran.dg/recursive_check_2.f90
gcc/testsuite/gfortran.dg/recursive_check_4.f03
gcc/testsuite/gfortran.dg/recursive_check_6.f03 [new file with mode: 0644]