re PR fortran/25061 (procedure name conflict)

2007-06-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/25061
	* decl.c (get_proc_name) Check symbol for generic interface
	and issue an error.

From-SVN: r125906
This commit is contained in:
Jerry DeLisle 2007-06-21 01:18:02 +00:00
parent 5b418a87cf
commit fd3e70afce
2 changed files with 14 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2007-06-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/25061
* decl.c (get_proc_name) Check symbol for generic interface
and issue an error.
2007-06-20 Andrew Pinski <andrew_pinski@playstation.sony.com>
Richard Guenther <rguenther@suse.de>

View File

@ -696,6 +696,14 @@ get_proc_name (const char *name, gfc_symbol **result, bool module_fcn_entry)
gfc_error_now ("Procedure '%s' at %C is already defined at %L",
name, &sym->declared_at);
/* Trap a procedure with a name the same as interface in the
encompassing scope. */
if (sym->attr.generic != 0
&& (sym->attr.subroutine || sym->attr.function))
gfc_error_now ("Name '%s' at %C is already defined"
" as a generic interface at %L",
name, &sym->declared_at);
/* Trap declarations of attributes in encompassing scope. The
signature for this is that ts.kind is set. Legitimate
references only set ts.type. */