This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Fix Fortran bootstrap failure in interface.c
- From: Gerald Pfeifer <gerald at pfeifer dot com>
- To: gcc-patches at gcc dot gnu dot org, Paul Thomas <pault at gcc dot gnu dot org>, fortran at gcc dot gnu dot org
- Date: Wed, 27 Dec 2006 17:31:31 +0100 (CET)
- Subject: Fix Fortran bootstrap failure in interface.c
I am afraid the following patch broke bootstrap on i386-suse-linux
2006-12-27 Paul Thomas <pault@gcc.gnu.org>
PR fortran/20896
* interface.c (check_sym_interfaces): Try to resolve interface
reference as a global symbol, if it is not a nodule procedure.
(compare_actual_formal): Remove call to gfc_find_symbol; if
the expression is already a variable it is locally declared
and this has precedence.
gfortran.h : Add prototype for resolve_global_procedure.
resolve.c (resolve_global_procedure): Remove static attribute
from function declaration.
(resolve_fl_procedure): Remove symtree declaration and the
redundant check for an ambiguous procedure.
PR fortran/25135
* module.c (load_generic_interfaces): If the symbol is present
and is not generic it is ambiguous.
with the following failure mode:
/tmp/OBJ-1227-1502/./prev-gcc/xgcc -B/tmp/OBJ-1227-1502/./prev-gcc/ -B/suse/gp/gcc-i686/i386-suse-linux/bin/ -c -O2 -g -fomit-frame-pointer -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wmissing-format-attribute -Werror -fno-common -DHAVE_CONFIG_H -I. -Ifortran -I/cvs/gcc/trunk/gcc -I/cvs/gcc/trunk/gcc/fortran -I/cvs/gcc/trunk/gcc/../include -I/cvs/gcc/trunk/gcc/../libcpp/include -I/cvs/gcc/trunk/gcc/../libdecnumber -I../libdecnumber /cvs/gcc/trunk/gcc/fortran/interface.c -o fortran/interface.o
cc1: warnings being treated as errors
/cvs/gcc/trunk/gcc/fortran/interface.c: In function 'compare_actual_formal':
/cvs/gcc/trunk/gcc/fortran/interface.c:1273: warning: unused variable 'gsym'
gmake[3]: *** [fortran/interface.o] Error 1
The patch below already proceeded farther into the bootstrap than current
SVN HEAD on i586-suse-linux, so I went ahead and committed it.
Gerald
2006-12-27 Gerald Pfeifer <gerald@pfeifer.com>
* interface.c (compare_actual_formal): Remove unused variable
gsym.
Index: interface.c
===================================================================
--- interface.c (revision 120218)
+++ interface.c (working copy)
@@ -1270,7 +1270,6 @@
{
gfc_actual_arglist **new, *a, *actual, temp;
gfc_formal_arglist *f;
- gfc_gsymbol *gsym;
int i, n, na;
bool rank_check;