From ecd3b73c6dde9d7b61b811b3cab3ac823b63c181 Mon Sep 17 00:00:00 2001 From: Paul Thomas Date: Sun, 21 Sep 2008 19:58:23 +0000 Subject: re PR fortran/37583 (ICE "insert_bbt(): Duplicate key" for self-calling ENTRY subprogram) 2008-09-21 Paul Thomas PR fortran/37583 * decl.c (scalarize_intrinsic_call): Both subroutines and functions can give a true for get_proc_mame's last argument so remove the &&gfc_current_ns->proc_name->attr.function. resolve.c (resolve_actual_arglist): Add check for recursion by reference to procedure as actual argument. 2008-09-21 Paul Thomas PR fortran/37583 * gfortran.dg/entry_18.f90: New test. From-SVN: r140532 --- gcc/fortran/decl.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'gcc/fortran/decl.c') diff --git a/gcc/fortran/decl.c b/gcc/fortran/decl.c index 0fc2a95..370ac10 100644 --- a/gcc/fortran/decl.c +++ b/gcc/fortran/decl.c @@ -4639,8 +4639,7 @@ gfc_match_entry (void) created symbols attached to the current namespace. */ if (get_proc_name (name, &entry, gfc_current_ns->parent != NULL - && module_procedure - && gfc_current_ns->proc_name->attr.function)) + && module_procedure)) return MATCH_ERROR; proc = gfc_current_block (); -- cgit v1.1