Hello, I am trying to do a LTO bootstrap of the gcc 6 snapshot 20160313 with ../gcc6/configure --enable-languages=c,c++,fortran,ada --with-system-zlib --enable-nls --without-included-gettext --enable-checking=release --enable-libstdcxx-time --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --enable-multilib --with-multilib-list=m32,m64 --enable-libgomp --enable-libcilkrts --enable-lto --with-isl --enable-libsanitizer --with-build-config=bootstrap-lto where Gentoo will use (truncated) --enable-languages=c,c++,fortran,ada --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --enable-checking=release --enable-libstdcxx-time --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --enable-multilib --with-multilib-list=m32,m64 --disable-altivec --disable-fixed-point --enable-targets=all --disable-libgcj --enable-libgomp --disable-libmudflap --disable-libssp --enable-libcilkrts --enable-lto --with-isl --disable-isl-version-check --enable-libsanitizer --with-build-config=bootstrap-lto (what failed for me in stage of gnattools - no rule to make target ...). It stopps with: ---CUT--- /home/dave2/gcc6b/./prev-gcc/xg++ -B/home/dave2/gcc6b/./prev-gcc/ -B/usr/local/x86_64-pc-linux-gnu/bin/ -nostdinc++ -B/home/dave2/gcc6b/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -B/home/dave2/gcc6b/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -I/home/dave2/gcc6b/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/home/dave2/gcc6b/prev-x86_64-pc-linux-gnu/libstdc++-v3/include -I/home/dave2/gcc6/libstdc++-v3/libsupc++ -L/home/dave2/gcc6b/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/home/dave2/gcc6b/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -no-pie -g -O2 -flto=jobserver -frandom-seed=1 -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc -o cc1plus \ cp/cp-lang.o c-family/stub-objc.o cp/call.o cp/decl.o cp/expr.o cp/pt.o cp/typeck2.o cp/class.o cp/decl2.o cp/error.o cp/lex.o cp/parser.o cp/ptree.o cp/rtti.o cp/typeck.o cp/cvt.o cp/except.o cp/friend.o cp/init.o cp/method.o cp/search.o cp/semantics.o cp/tree.o cp/repo.o cp/dump.o cp/optimize.o cp/mangle.o cp/cp-objcp-common.o cp/name-lookup.o cp/cxx-pretty-print.o cp/cp-cilkplus.o cp/cp-gimplify.o cp/cp-array-notation.o cp/lambda.o cp/vtable-class-hierarchy.o cp/constexpr.o cp/cp-ubsan.o cp/constraint.o cp/logic.o attribs.o incpath.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-indentation.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-cilkplus.o c-family/array-notation-common.o c-family/cilk.o c-family/c-ubsan.o i386-c.o glibc-c.o cc1plus-checksum.o libbackend.a main.o libcommon-target.a libcommon.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a libcommon.a ../libcpp/libcpp.a ../libbacktrace/.libs/libbacktrace.a ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a -lisl -lmpc -lmpfr -lgmp -rdynamic -ldl -lz ../../gcc6/libdecnumber/dpd/decimal32.c:53:0: error: type of ‘decDigitsFromDPD’ does not match original declaration [-Werror=lto-type-mismatch] extern void decDigitsFromDPD(decNumber *, const uInt *, Int); ../../gcc6/libdecnumber/dpd/decimal128.c:52:0: error: type of ‘decDigitsFromDPD’ does not match original declaration [-Werror=lto-type-mismatch] extern void decDigitsFromDPD(decNumber *, const uInt *, Int); ../../gcc6/libdecnumber/dpd/decimal64.c:741:0: note: ‘decDigitsFromDPD’ was previously declared here void decDigitsFromDPD(decNumber *dn, const uInt *sour, Int declets) { ../../gcc6/libdecnumber/dpd/decimal64.c:741:0: note: code may be misoptimized unless -fno-strict-aliasing is used ../../gcc6/libdecnumber/dpd/decimal32.c:52:0: error: type of ‘decDigitsToDPD’ does not match original declaration [-Werror=lto-type-mismatch] extern void decDigitsToDPD(const decNumber *, uInt *, Int); ../../gcc6/libdecnumber/dpd/decimal128.c:53:0: error: type of ‘decDigitsToDPD’ does not match original declaration [-Werror=lto-type-mismatch] extern void decDigitsToDPD(const decNumber *, uInt *, Int); ../../gcc6/libdecnumber/dpd/decimal64.c:615:0: note: ‘decDigitsToDPD’ was previously declared here void decDigitsToDPD(const decNumber *dn, uInt *targ, Int shift) { ../../gcc6/libdecnumber/dpd/decimal64.c:615:0: note: code may be misoptimized unless -fno-strict-aliasing is used ../../gcc6/libdecnumber/decNumber.h:150:0: error: type of ‘decNumberPlus’ does not match original declaration [-Werror=lto-type-mismatch] decNumber * decNumberPlus(decNumber *, const decNumber *, decContext *); ../../gcc6/libdecnumber/decNumber.h:150:0: error: type of ‘decNumberPlus’ does not match original declaration [-Werror=lto-type-mismatch] decNumber * decNumberPlus(decNumber *, const decNumber *, decContext *); ../../gcc6/libdecnumber/decNumber.h:150:0: error: type of ‘decNumberPlus’ does not match original declaration [-Werror=lto-type-mismatch] decNumber * decNumberPlus(decNumber *, const decNumber *, decContext *); ../../gcc6/libdecnumber/decNumber.c:1875:0: note: ‘decNumberPlus’ was previously declared here decNumber * decNumberPlus(decNumber *res, const decNumber *rhs, ../../gcc6/libdecnumber/decNumber.c:1875:0: note: code may be misoptimized unless -fno-strict-aliasing is used ../../gcc6/libdecnumber/decNumber.h:120:0: error: type of ‘decNumberToEngString’ does not match original declaration [-Werror=lto-type-mismatch] char * decNumberToEngString(const decNumber *, char *); ../../gcc6/libdecnumber/decNumber.h:120:0: error: type of ‘decNumberToEngString’ does not match original declaration [-Werror=lto-type-mismatch] char * decNumberToEngString(const decNumber *, char *); ../../gcc6/libdecnumber/decNumber.h:120:0: error: type of ‘decNumberToEngString’ does not match original declaration [-Werror=lto-type-mismatch] char * decNumberToEngString(const decNumber *, char *); ../../gcc6/libdecnumber/decNumber.c:464:0: note: ‘decNumberToEngString’ was previously declared here char * decNumberToEngString(const decNumber *dn, char *string){ ../../gcc6/libdecnumber/decNumber.c:464:0: note: code may be misoptimized unless -fno-strict-aliasing is used ../../gcc6/gcc/../libdecnumber/decNumber.h:156:0: error: type of ‘decNumberRescale’ does not match original declaration [-Werror=lto-type-mismatch] decNumber * decNumberRescale(decNumber *, const decNumber *, const decNumber *, decContext *); ../../gcc6/libdecnumber/decNumber.c:2376:0: note: ‘decNumberRescale’ was previously declared here decNumber * decNumberRescale(decNumber *res, const decNumber *lhs, ../../gcc6/libdecnumber/decNumber.c:2376:0: note: code may be misoptimized unless -fno-strict-aliasing is used ../../gcc6/gcc/../libdecnumber/decNumber.h:119:0: error: type of ‘decNumberToString’ does not match original declaration [-Werror=lto-type-mismatch] char * decNumberToString(const decNumber *, char *); ../../gcc6/libdecnumber/decNumber.h:119:0: error: type of ‘decNumberToString’ does not match original declaration [-Werror=lto-type-mismatch] char * decNumberToString(const decNumber *, char *); ../../gcc6/libdecnumber/decNumber.h:119:0: error: type of ‘decNumberToString’ does not match original declaration [-Werror=lto-type-mismatch] char * decNumberToString(const decNumber *, char *); ../../gcc6/libdecnumber/decNumber.h:119:0: error: type of ‘decNumberToString’ does not match original declaration [-Werror=lto-type-mismatch] char * decNumberToString(const decNumber *, char *); ../../gcc6/libdecnumber/decNumber.c:459:0: note: ‘decNumberToString’ was previously declared here char * decNumberToString(const decNumber *dn, char *string){ ---CUT--- Should it work without using --disable-werror at ./configure please? Output of configure: checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether ln works... yes checking whether ln -s works... yes checking for a sed that does not truncate output... /bin/sed checking for gawk... gawk checking for libatomic support... yes checking for libitm support... yes checking for libvtv support... yes checking for libmpx support... yes checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking whether g++ accepts -static-libstdc++ -static-libgcc... yes checking for gnatbind... gnatbind checking for gnatmake... gnatmake checking whether compiler driver understands Ada... yes checking how to compare bootstrapped objects... cmp --ignore-initial=16 $$f1 $$f2 checking for objdir... .libs checking for the correct version of gmp.h... yes checking for the correct version of mpfr.h... yes checking for the correct version of mpc.h... yes checking for the correct version of the gmp/mpfr/mpc libraries... yes checking for isl 0.16, 0.15, or deprecated 0.14... yes checking for isl 0.16 or 0.15... yes The following languages will be built: c,ada,c++,fortran,lto *** This configuration is not supported in the following subdirectories: zlib gotools target-libgo target-libffi target-zlib target-libjava target-libobjc target-liboffloadmic target-boehm-gc (Any other directories should still work fine.) checking for default BUILD_CONFIG... bootstrap-lto checking for --enable-vtable-verify... no checking for bison... bison -y checking for bison... bison checking for gm4... no checking for gnum4... no checking for m4... m4 checking for flex... flex checking for flex... flex checking for makeinfo... makeinfo checking for expect... expect checking for runtest... runtest checking for ar... ar checking for as... as checking for dlltool... no checking for ld... (cached) /usr/lib/gcc/x86_64-pc-linux-gnu/5.3.0/../../../../x86_64-pc-linux-gnu/bin/ld checking for lipo... no checking for nm... nm checking for ranlib... ranlib checking for strip... strip checking for windres... no checking for windmc... no checking for objcopy... objcopy checking for objdump... objdump checking for readelf... readelf checking for cc... cc checking for c++... c++ checking for gcc... gcc checking for gcj... gcj checking for gfortran... gfortran checking for gccgo... gccgo checking for ar... no checking for ar... ar checking for as... no checking for as... as checking for dlltool... no checking for dlltool... no checking for ld... no checking for ld... ld checking for lipo... no checking for lipo... no checking for nm... no checking for nm... nm checking for objcopy... no checking for objcopy... objcopy checking for objdump... no checking for objdump... objdump checking for ranlib... no checking for ranlib... ranlib checking for readelf... no checking for readelf... readelf checking for strip... no checking for strip... strip checking for windres... no checking for windres... no checking for windmc... no checking for windmc... no checking where to find the target ar... host tool checking where to find the target as... host tool checking where to find the target cc... just compiled checking where to find the target c++... just compiled checking where to find the target c++ for libstdc++... just compiled checking where to find the target dlltool... host tool checking where to find the target gcc... just compiled checking where to find the target gcj... host tool checking where to find the target gfortran... just compiled checking where to find the target gccgo... host tool checking where to find the target ld... host tool checking where to find the target lipo... host tool checking where to find the target nm... host tool checking where to find the target objcopy... host tool checking where to find the target objdump... host tool checking where to find the target ranlib... host tool checking where to find the target readelf... host tool checking where to find the target strip... host tool checking where to find the target windres... host tool checking where to find the target windmc... host tool checking whether to enable maintainer-specific portions of Makefiles... no configure: creating ./config.status config.status: creating Makefile The folder /usr/local/x86_64-pc-linux-gnu/bin/, used as -B/usr/local/x86_64-pc-linux-gnu/bin/ does not exist on my system, so it not interferes. Thank you in advance. David