The version of this patch applied to GCC 10 branch (commit 641b407763ecfee5d4ac86d8ffe9eb1eeea5fd10) has broken the glibc build for powerpc64le-linux-gnu (it's fine with GCC 11 branch and master, just GCC 10 branch is broken) <https://sourceware.org/pipermail/libc-testresults/2022q1/009444.html>. Specifically, the test program links-dso-program.cc built during the glibc build no longer builds, with a series of errors in libstdc++ headers such as:
/scratch/jmyers/glibc/many10/install/compilers/powerpc64le-linux-gnu/powerpc64le-glibc-linux-gnu/include/c++/10.3.1/type_traits:387:39: error: '__float128' was not declared in this scope 387 | struct __is_floating_point_helper<__float128> | ^~~~~~~~~~ So it appears that with the GCC 10 version, there is some inconsistency between what the compiler defines and what the headers expect. This file in glibc is built with the following command: powerpc64le-glibc-linux-gnu-g++ links-dso-program.cc -c -I/scratch/jmyers/glibc/many10/build/glibcs/powerpc64le-linux-gnu/glibc/ -g -O2 -Wall -Wwrite-strings -Wundef -Werror -fmerge-all-constants -frounding-math -fno-stack-protector -fno-common -mabi=ieeelongdouble -Wno-psabi -mno-gnu-attribute -mlong-double-128 -fpie -mno-float128 -I../include -I/scratch/jmyers/glibc/many10/build/glibcs/powerpc64le-linux-gnu/glibc/support -I/scratch/jmyers/glibc/many10/build/glibcs/powerpc64le-linux-gnu/glibc -I../sysdeps/unix/sysv/linux/powerpc/powerpc64/le/fpu -I../sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu -I../sysdeps/unix/sysv/linux/powerpc/powerpc64/le -I../sysdeps/unix/sysv/linux/powerpc/powerpc64 -I../sysdeps/unix/sysv/linux/wordsize-64 -I../sysdeps/unix/sysv/linux/powerpc -I../sysdeps/powerpc/nptl -I../sysdeps/unix/sysv/linux/include -I../sysdeps/unix/sysv/linux -I../sysdeps/nptl -I../sysdeps/pthread -I../sysdeps/gnu -I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../sysdeps/unix/powerpc -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/powerpc/powerpc64/le/power8/fpu/multiarch -I../sysdeps/powerpc/powerpc64/le/power7/fpu/multiarch -I../sysdeps/powerpc/powerpc64/le/fpu/multiarch -I../sysdeps/powerpc/powerpc64/le/power8/fpu -I../sysdeps/powerpc/powerpc64/le/power7/fpu -I../sysdeps/powerpc/powerpc64/le/fpu -I../sysdeps/powerpc/powerpc64/fpu -I../sysdeps/powerpc/powerpc64/le/power8/multiarch -I../sysdeps/powerpc/powerpc64/le/power7/multiarch -I../sysdeps/powerpc/powerpc64/le/multiarch -I../sysdeps/powerpc/powerpc64/multiarch -I../sysdeps/powerpc/powerpc64/le/power8 -I../sysdeps/powerpc/powerpc64/power8 -I../sysdeps/powerpc/powerpc64/le/power7 -I../sysdeps/powerpc/powerpc64/power7 -I../sysdeps/powerpc/powerpc64/power6 -I../sysdeps/powerpc/powerpc64/power4 -I../sysdeps/powerpc/power4 -I../sysdeps/powerpc/powerpc64/le -I../sysdeps/powerpc/powerpc64 -I../sysdeps/wordsize-64 -I../sysdeps/powerpc/fpu -I../sysdeps/powerpc -I../sysdeps/ieee754/ldbl-128ibm-compat -I../sysdeps/ieee754/ldbl-128ibm/include -I../sysdeps/ieee754/ldbl-128ibm -I../sysdeps/ieee754/ldbl-opt -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/float128 -I../sysdeps/ieee754 -I../sysdeps/generic -I.. -I../libio -I. -D_LIBC_REENTRANT -include /scratch/jmyers/glibc/many10/build/glibcs/powerpc64le-linux-gnu/glibc/libc-modules.h -DMODULE_NAME=nonlib -include ../include/libc-symbols.h -DPIC -DTOP_NAMESPACE=glibc -o /scratch/jmyers/glibc/many10/build/glibcs/powerpc64le-linux-gnu/glibc/support/links-dso-program.o -MD -MP -MF /scratch/jmyers/glibc/many10/build/glibcs/powerpc64le-linux-gnu/glibc/support/links-dso-program.o.dt -MT /scratch/jmyers/glibc/many10/build/glibcs/powerpc64le-linux-gnu/glibc/support/links-dso-program.o -- Joseph S. Myers jos...@codesourcery.com