http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51792
Bug #: 51792 Summary: [4.7 regression] fortran bootstrap failure: no previous prototype for 'resolve_typebound_function' Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassig...@gcc.gnu.org ReportedBy: mi...@it.uu.se Bootstrapping gcc-4.7-20120107 with fortran enabled and --disable-build-poststage1-with-cxx fails with: /mnt/scratch/objdir47/./prev-gcc/xgcc -B/mnt/scratch/objdir47/./prev-gcc/ -B/mnt/scratch/install47/i686-pc-linux-gnu/bin/ -B/mnt/scratch/install47/i686-pc-linux-gnu/bin/ -B/mnt/scratch/install47/i686-pc-linux-gnu/lib/ -isystem /mnt/scratch/install47/i686-pc-linux-gnu/include -isystem /mnt/scratch/install47/i686-pc-linux-gnu/sys-include -c -DIN_GCC_FRONTEND -g -O2 -gtoggle -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -DHAVE_CONFIG_H -I. -Ifortran -I/mnt/scratch/gcc-4.7-20120107/gcc -I/mnt/scratch/gcc-4.7-20120107/gcc/fortran -I/mnt/scratch/gcc-4.7-20120107/gcc/../include -I/mnt/scratch/gcc-4.7-20120107/gcc/../libcpp/include -I/home/mikpe/pkgs/linux-x86/gmp-5.0.2/include -I/home/mikpe/pkgs/linux-x86/mpfr-3.1.0/include -I/home/mikpe/pkgs/linux-x86/mpc-0.9/include -I/mnt/scratch/gcc-4.7-20120107/gcc/../libdecnumber -I/mnt/scratch/gcc-4.7-20120107/gcc/../libdecnumber/bid -I../libdecnumber /mnt/scratch/gcc-4.7-20120107/gcc/fortran/resolve.c -o fortran/resolve.o /mnt/scratch/gcc-4.7-20120107/gcc/fortran/resolve.c:5891:1: error: no previous prototype for 'resolve_typebound_function' [-Werror=missing-prototypes] cc1: all warnings being treated as errors This is because r182754 (PR 46262 + 46328 + 51052 fix) deleted the 'static' for resolve_typebound_function, even though nothing outside of resolve.c calls it, and there is no previous prototype in scope. Adding the 'static' back allows bootstrap to complete. Yet another error missed due to the build-everything-with-c++-by-default change.