From 15312fe8a91102f9fd8ed9fcab3d63906ba0773b Mon Sep 17 00:00:00 2001 From: jvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Wed, 23 May 2007 04:15:25 +0000 Subject: [PATCH] 2007-05-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/18923 * resolve.c (resolve_function): Don't call resolve_global_procedure if there is no name. Delete duplicated statement in ELSE clause. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@124979 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/fortran/ChangeLog | 8 +++++++- gcc/fortran/resolve.c | 5 ++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 45f40034988e..232fb9142714 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2007-05-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/18923 + * resolve.c (resolve_function): Don't call resolve_global_procedure if + there is no name. Delete duplicated statement in ELSE clause. + 2007-05-22 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> PR fortran/31627 @@ -8,7 +14,7 @@ (gfc_conv_array_ref): Likewise. (gfc_conv_ss_startstride): Likewise. -2005-05-21 Jerry DeLisle <jvdelisle@verizon.net> +2007-05-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> Daniel Franke <franke.daniel@gmail.com> PR fortran/32002 diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index 746d41b33158..60da300e5bd3 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -1567,7 +1567,8 @@ resolve_function (gfc_expr *expr) procedure,it must be external and should be checked for usage. */ if (sym && !sym->attr.dummy && !sym->attr.contained && sym->attr.proc != PROC_ST_FUNCTION - && !sym->attr.use_assoc) + && !sym->attr.use_assoc + && sym->name ) resolve_global_procedure (sym, &expr->where, 0); /* Switch off assumed size checking and do this again for certain kinds @@ -1750,8 +1751,6 @@ resolve_function (gfc_expr *expr) if (expr->symtree->n.sym->result && expr->symtree->n.sym->result->ts.type != BT_UNKNOWN) expr->ts = expr->symtree->n.sym->result->ts; - else - expr->ts = expr->symtree->n.sym->result->ts; } return t; -- GitLab