http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48009
Summary: Bootstrap failure: c++locale.cc: invalid conversion from 'const char*' to 'char*' Product: gcc Version: 4.5.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap AssignedTo: unassig...@gcc.gnu.org ReportedBy: sk...@iskunk.org Host: powerpc-ibm-aix4.3.2.0 Target: powerpc-ibm-aix4.3.2.0 Build: powerpc-ibm-aix4.3.2.0 After working around bug #47907, bootstrapping GCC 4.5.2 on this AIX 4.3 system fails with ln -s /home/src/gcc-4.5.2/libstdc++-v3/config/locale/generic/c_locale.cc ./c++locale.cc || true [...] libtool: compile: /tmp/gcc-4.5.2-build/./gcc/xgcc -shared-libgcc -B/tmp/gcc-4.5.2-build/./gcc -nostdinc++ -L/tmp/gcc-4.5.2-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src -L/tmp/gcc-4.5.2-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src/.libs -B/opt/tg/powerpc-ibm-aix4.3.2.0/bin/ -B/opt/tg/powerpc-ibm-aix4.3.2.0/lib/ -isystem /opt/tg/powerpc-ibm-aix4.3.2.0/include -isystem /opt/tg/powerpc-ibm-aix4.3.2.0/sys-include -I/tmp/gcc-4.5.2-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/powerpc-ibm-aix4.3.2.0 -I/tmp/gcc-4.5.2-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include -I/home/src/gcc-4.5.2/libstdc++-v3/libsupc++ -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -g -c c++locale.cc -DPIC -o c++locale.o c++locale.cc: In function 'void std::__convert_to_v(const char*, _Tp&, std::ios_base::iostate&, int* const&) [with _Tp = float, std::ios_base::iostate = std::_Ios_Iostate, int* = int*]': c++locale.cc:66:34: error: invalid conversion from 'const char*' to 'char*' c++locale.cc:66:34: error: initializing argument 1 of 'float strtof(char*, char**)' make[4]: *** [c++locale.lo] Error 1 make[4]: Leaving directory `/tmp/gcc-4.5.2-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/tmp/gcc-4.5.2-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3' make[2]: *** [all] Error 2 make[2]: Leaving directory `/tmp/gcc-4.5.2-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3' make[1]: *** [all-target-libstdc++-v3] Error 2 make[1]: Leaving directory `/tmp/gcc-4.5.2-build' make: *** [bootstrap-lean] Error 2 Sure enough, % grep strtof /usr/include/*.h /usr/include/stdlib.h: extern float strtof(); /usr/include/stdlib.h: extern float strtof(char *, char **); This is the same as bug #26297, except with newer versions of AIX and GCC. I will attempt adding the const keyword to the strtof() prototype in GCC's copy of the system stdlib.h.