Subject: [core-updates] libstdc++ fails to build on powerpc64le-linux

From: Ludovic Courtès <[email-masked]>
Date: Wed, 01 Mar 2023 00:16:54 +0100

>From <https://ci.guix.gnu.org/build/440447/details> (commit
0825162a35362640b47d3cabe278fd7ea49140bd and later):

--8<---------------cut here---------------start------------->8---
libtool: compile:  g++ -I/tmp/guix-build-libstdc++-11.3.0.drv-0/gcc-11.3.0/libstdc++-v3/../libgcc -I/tmp/guix-build-libstdc++-11.3.0.drv-0/gcc-11.3.0/build/include/ -I/tmp/guix-build-libstdc++-11.3.0.drv-0/gcc-11.3.0/build/include -I/tmp/guix-build-libstdc++-11.3.0.drv-0/gcc-11.3.0/libstdc++-v3/libsupc++ -std=gnu++17 -nostdinc++ -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi=2 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=fs_path.lo -mno-gnu-attribute -fimplicit-templates -c ../../../libstdc++-v3/src/c++17/fs_path.cc
../../../libstdc++-v3/src/c++17/floating_from_chars.cc: In function 'std::from_chars_result std::from_chars(const char*, const char*, __ieee128&, std::chars_format)':
../../../libstdc++-v3/src/c++17/floating_from_chars.cc:499:8: error: 'string' is not a member of 'std::pmr'; did you mean 'std::string'?
  499 |   pmr::string buf(&mr);
      |        ^~~~~~
In file included from /tmp/guix-build-libstdc++-11.3.0.drv-0/gcc-11.3.0/build/include/string:39,
                 from ../../../libstdc++-v3/src/c++17/floating_from_chars.cc:34:
/tmp/guix-build-libstdc++-11.3.0.drv-0/gcc-11.3.0/build/include/bits/stringfwd.h:79:33: note: 'std::string' declared here
   79 |   typedef basic_string<char>    string;
      |                                 ^~~~~~
../../../libstdc++-v3/src/c++17/floating_from_chars.cc:504:55: error: 'buf' was not declared in this scope
  504 |       if (const char* pat = pattern(first, last, fmt, buf)) [[likely]]
      |                                                       ^~~
make[3]: *** [Makefile:762: floating_from_chars.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from ../../../libstdc++-v3/src/c++17/fs_ops.cc:58:
../../../libstdc++-v3/src/c++17/../filesystem/ops-common.h: In function 'std::filesystem::file_type std::filesystem::make_file_type(const stat_type&)':
../../../libstdc++-v3/src/c++17/../filesystem/ops-common.h:269:35: warning: unused parameter 'st' [-Wunused-parameter]
  269 |   make_file_type(const stat_type& st) noexcept
      |                  ~~~~~~~~~~~~~~~~~^~
make[3]: Leaving directory '/tmp/guix-build-libstdc++-11.3.0.drv-0/gcc-11.3.0/build/src/c++17'
make[2]: *** [Makefile:765: all-recursive] Error 1
make[2]: Leaving directory '/tmp/guix-build-libstdc++-11.3.0.drv-0/gcc-11.3.0/build/src'
make[1]: *** [Makefile:568: all-recursive] Error 1
make[1]: Leaving directory '/tmp/guix-build-libstdc++-11.3.0.drv-0/gcc-11.3.0/build'
make: *** [Makefile:493: all] Error 2
error: in phase 'build': uncaught exception:
srfi-34 #<condition &invoke-error [program: "make" arguments: ("-j" "32") exit-status: 2 term-signal: #f stop-signal: #f] 7fffefc213c0> 
phase `build' failed after 6.0 seconds
command "make" "-j" "32" failed with status 2
builder for `/gnu/store/bpx8ar4qq4bkskhhj25l5phxxji0ljf8-libstdc++-11.3.0.drv' failed with exit code 1
@ build-failed /gnu/store/bpx8ar4qq4bkskhhj25l5phxxji0ljf8-libstdc++-11.3.0.drv - 1 builder for `/gnu/store/bpx8ar4qq4bkskhhj25l5phxxji0ljf8-libstdc++-11.3.0.drv' failed with exit code 1
--8<---------------cut here---------------end--------------->8---

Ludo’.