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.

Reply via email to