From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 759A2386F0DB; Mon, 27 Jun 2022 10:05:36 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 759A2386F0DB From: "slyfox at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/106102] New: gcc/cp/mapper-resolver.cc fails to build against musl: musl-1.2.3-dev/include/sched.h:84:7: error: attempt to use poisoned "calloc" Date: Mon, 27 Jun 2022 10:05:36 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Version: 13.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: slyfox at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter target_milestone Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jun 2022 10:05:36 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D106102 Bug ID: 106102 Summary: gcc/cp/mapper-resolver.cc fails to build against musl: musl-1.2.3-dev/include/sched.h:84:7: error: attempt to use poisoned "calloc" Product: gcc Version: 13.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: slyfox at gcc dot gnu.org Target Milestone: --- For build errors like 'error: attempt to use poisoned "calloc"': is it a gcc bug or libc bug? At least on musl libc gcc marks calloc() as '#pragma GCC poison' but later stumbles on '#define CPU_ALLOC(n) ((cpu_set_t *)calloc(1,CPU_ALLOC_SIZE(n))= )' from musl's own sched.h. Here is an example failure on this week's gcc: /build/build/./prev-gcc/xg++ -B/build/build/./prev-gcc/ -B/<>/gcc-13.0.0/x86_64-unknown-linux-musl/bin/ -nostdinc++ -B/build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/src/.libs -B/build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/libsupc++/.libs= =20 -I/build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/include/x86_64-u= nknown-linux-musl -I/build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/include=20 -I/build/gcc-13-20220626/libstdc++-v3/libsupc++ -L/build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/src/.libs -L/build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/libsupc++/.libs= =20 -fno-PIE -c -DIN_GCC_FRONTEND -O2 -I/<>/musl-1.2.3-dev/include -B/<>/musl-1.2.3/lib/ -idirafter /<>/musl-1.2.3-dev/include -idirafter /<>/bootstrap-tools/lib/gcc/x86_64-unknown-linux-musl/7.3.0/include-fi= xed -Wl,-rpath,/<>/gcc-13.0.0-lib/lib -Wl,-L/<>/musl-1.2.3/lib -Wl,-r= path -Wl,/<>/musl-1.2.3/lib -Wl,-dynamic-linker=3D/<>/musl-1.2.3/lib/ld-musl-x86_64.so.1 -fno-chec= king -gtoggle -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-table= s -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common -DHAVE_CONFIG_H -I. -Icp -I../../gcc-13-20220626/gcc -I../../gcc-13-20220626/gcc/cp -I../../gcc-13-20220626/gcc/../include -I../../gcc-13-20220626/gcc/../libcpp/include -I../../gcc-13-20220626/gcc/../libcody -I/<>/gmp-with-cxx-6.2.1-dev/include -I/<>/mpfr-4.1.0-dev/include -I/<>/libmpc-1.2.1/include -I../../gcc-13-20220626/gcc/../libdecnumber -I../../gcc-13-20220626/gcc/../libdecnumber/bid -I../libdecnumber -I../../gcc-13-20220626/gcc/../libbacktrace -I/<>/isl-0.20/include -o cp/mapper-resolver.o -MT cp/mapper-resolver.o -MMD -MP -MF cp/.deps/mapper-resolver.TPo ../../gcc-13-20220626/gcc/cp/mapper-resolver.cc In file included from /<>/musl-1.2.3-dev/include/pthread.h:30, from /build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/include/x86_64-unk= nown-linux-musl/bits/gthr-default.h:35, from /build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/include/x86_64-unk= nown-linux-musl/bits/gthr.h:148, from /build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/include/ext/atomic= ity.h:35, from /build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/include/bits/share= d_ptr_base.h:61, from /build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/include/bits/share= d_ptr.h:53, from /build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/include/memory:77, from ../../gcc-13-20220626/gcc/../libcody/cody.hh:24, from ../../gcc-13-20220626/gcc/cp/../../c++tools/resolver.h:25, from ../../gcc-13-20220626/gcc/cp/../../c++tools/resolver.cc:23, from ../../gcc-13-20220626/gcc/cp/mapper-resolver.cc:32: /<>/musl-1.2.3-dev/include/sched.h:84:7: error: attempt to use poisoned "calloc" 84 | void *calloc(size_t, size_t); | ^ /<>/musl-1.2.3-dev/include/sched.h:124:36: error: attempt to use poiso= ned "calloc" 124 | #define CPU_ALLOC(n) ((cpu_set_t *)calloc(1,CPU_ALLOC_SIZE(n))) | ^ make[3]: *** [Makefile:1143: cp/mapper-resolver.o] Error 1 make[3]: *** Waiting for unfinished jobs.... rm fsf-funding.pod lto-dump.pod gfdl.pod gpl.pod cpp.pod gcc.pod gcov-tool.= pod gcov.pod gcov-dump.pod make[3]: Leaving directory '/build/build/gcc' make[2]: *** [Makefile:5000: all-stage2-gcc] Error 2 make[2]: Leaving directory '/build/build' make[1]: *** [Makefile:24628: stage2-bubble] Error 2 make[1]: Leaving directory '/build/build' make: *** [Makefile:24840: bootstrap] Error 2 gcc is configured as: ./configure --prefix=3D/<>/gcc-13.0.0 --with-gmp-include=3D/<>/gmp-with-cxx-6.2.1-dev/include --with-gmp-lib=3D/<>/gmp-with-cxx-6.2.1/lib --with-mpfr-include=3D/<>/mpfr-4.1.0-dev/include --with-mpfr-lib=3D/<>/mpfr-4.1.0/lib --with-mpc=3D/<>/libmpc-1.2.1 --with-libelf=3D/<>/libelf-0.8.13 --with-native-system-header-dir=3D/<>/musl-1.2.3-dev/include --program-prefix=3D --enable-lto --disable-libstdcxx-pch --without-included-gettext --with-system-zlib --enable-static --enable-languages=3Dc\,c++ --disable-multilib --enable-plugin --with-isl=3D/<>/isl-0.20 --disable-libmpx --disable-libsanitizer --disable-symvers libat_cv_have_ifunc=3Dno --disable-gnu-indirect-function --build=3Dx86_64-unknown-linux-musl --host=3Dx86_64-unknown-linux-musl --target=3Dx86_64-unknown-linux-musl=