[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1096726: gloo: ftbfs with GCC-15



Package: src:gloo
Version: 0.0~git20231202.5354032-3
Severity: important
Tags: sid forky
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-15

[This bug is NOT targeted to the upcoming trixie release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-15/g++-15, but succeeds to build with gcc-14/g++-14. The
severity of this report will be raised before the forky release.

The full build log can be found at:
http://qa-logs.debian.net/2025/02/16/amd64exp/gloo_0.0~git20231202.5354032-3_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

To build with GCC 15, either set CC=gcc-15 CXX=g++-15 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other Common build failures are new warnings resulting in build failures
with -Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-15/porting_to.html

[...]
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/types.cc:16:18: error: ‘uint8_t’ was not declared in this scope
   16 | Slot Slot::build(uint8_t prefix, uint32_t tag) {
      |                  ^~~~~~~
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/types.cc:10:1: note: ‘uint8_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
    9 | #include "gloo/types.h"
  +++ |+#include <cstdint>
   10 | 
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/types.cc:16:34: error: ‘uint32_t’ was not declared in this scope
   16 | Slot Slot::build(uint8_t prefix, uint32_t tag) {
      |                                  ^~~~~~~~
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/types.cc:16:34: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/types.cc:16:48: error: expected ‘,’ or ‘;’ before ‘{’ token
   16 | Slot Slot::build(uint8_t prefix, uint32_t tag) {
      |                                                ^
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/types.cc:22:6: error: declaration of ‘operator+’ as non-function
   22 | Slot Slot::operator+(uint8_t i) const {
      |      ^~~~
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/types.cc:22:22: error: ‘uint8_t’ was not declared in this scope
   22 | Slot Slot::operator+(uint8_t i) const {
      |                      ^~~~~~~
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/types.cc:22:22: note: ‘uint8_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
make[3]: *** [gloo/CMakeFiles/gloo.dir/build.make:278: gloo/CMakeFiles/gloo.dir/types.cc.o] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from /build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/transport/pair.h:13,
                 from /build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/context.h:15,
                 from /build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/mpi/context.h:11,
                 from /build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/mpi/context.cc:9:
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/mpi/context.cc: In destructor ‘gloo::mpi::MPIScope::~MPIScope()’:
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/common/logging.h:137:7: warning: ‘throw’ will always call ‘terminate’ [-Wterminate]
  137 |       throw EnforceNotMet(                                  \
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  138 |           __FILE__,                                         \
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  139 |           __LINE__,                                         \
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  140 |           expr,                                             \
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  141 |           r.get_message_and_free(MakeString(__VA_ARGS__))); \
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/common/logging.h:150:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’
  150 |   GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__)
      |   ^~~~~~~~~~~~~~~~~~~~~~
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/mpi/context.cc:43:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’
   43 |   GLOO_ENFORCE_EQ(rv, MPI_SUCCESS);
      |   ^~~~~~~~~~~~~~~
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/common/logging.h:137:7: note: in C++11 destructors default to ‘noexcept’
  137 |       throw EnforceNotMet(                                  \
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  138 |           __FILE__,                                         \
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  139 |           __LINE__,                                         \
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  140 |           expr,                                             \
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  141 |           r.get_message_and_free(MakeString(__VA_ARGS__))); \
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/common/logging.h:150:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’
  150 |   GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__)
      |   ^~~~~~~~~~~~~~~~~~~~~~
/build/reproducible-path/gloo-0.0~git20231202.5354032/gloo/mpi/context.cc:43:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’
   43 |   GLOO_ENFORCE_EQ(rv, MPI_SUCCESS);
      |   ^~~~~~~~~~~~~~~
make[3]: Leaving directory '/build/reproducible-path/gloo-0.0~git20231202.5354032/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:242: gloo/CMakeFiles/gloo.dir/all] Error 2
make[2]: Leaving directory '/build/reproducible-path/gloo-0.0~git20231202.5354032/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:139: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/gloo-0.0~git20231202.5354032/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j8 "INSTALL=install --strip-program=true" VERBOSE=1 returned exit code 2
make: *** [debian/rules:12: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2


Reply to: