Bug#1133469: esys-particle: ftbfs with GCC-16

Emanuele Rocca ema at debian.org
Mon Apr 13 14:03:17 BST 2026


Package: src:esys-particle
Version: 2.3.5+dfsg2-13
Severity: important
Tags: sid forky ftbfs
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-16

Hi,

esys-particle fails to build in a test rebuild on at least amd64 and arm64 with
gcc-16/g++-16, but builds properly with gcc-15/g++-15. The severity of this
report will be raised before the forky release.

The full build log can be found at:
https://people.debian.org/~ema/gcc-16-rebuilds/output-1/esys-particle_arm64.build.xz

The last lines of the build log are at the end of this report.

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

  apt-get -t=experimental install g++ 

Common build failures include unused (but set) variables, array subscripts
partly outside array bounds, and new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-16/porting_to.html

Please only close this issue after double-checking that the package can be
built correctly with GCC 16.

Please do not reassign this bug to another package. If a fix in another package
is required, then file a bug for the other package (or clone), and mark this
bug as blocked by the bug in the other package.

[...]


libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c RoughPaddedBlock3d.cpp -o RoughPaddedBlock3d.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c HexagBlock.cpp -o HexagBlock.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c RandomAssembly3D.cpp -o RandomAssembly3D.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c SimpleBlock.cpp -o SimpleBlock.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c SphereNeighbours.cpp -o SphereNeighbours.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c RandomAssembly2D.cpp -o RandomAssembly2D.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c CubicBoxPacker.cpp -o CubicBoxPacker.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c Triangle.cpp -o Triangle.o >/dev/null 2>&1
make[3]: *** [Makefile:707: SphAggGougeBlock.lo] Error 1
In file included from /usr/include/c++/16/set:64,
                 from ../Geometry/CircularNeighbourTable.h:23,
                 from ../Geometry/GougeBlock3D.h:18,
                 from GougeBlock3D.cpp:16:
/usr/include/c++/16/bits/stl_tree.h: In instantiation of 'bool std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_key_compare(const _Key1&, const _Key2&) const [with _Key1 = BasicInteraction; _Key2 = BasicInteraction; _Key = BasicInteraction; _Val = BasicInteraction; _KeyOfValue = std::_Identity<BasicInteraction>; _Compare = BILess; _Alloc = std::allocator<BasicInteraction>]':
/usr/include/c++/16/bits/stl_tree.h:2811:27:   required from 'std::pair<typename std::__rb_tree::_Node_traits<_Val, typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val>::other>::pointer>::_Base_ptr, typename std::__rb_tree::_Node_traits<_Val, typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val>::other>::pointer>::_Base_ptr> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_get_insert_unique_pos(const key_type&) [with _Key = BasicInteraction; _Val = BasicInteraction; _KeyOfValue = std::_Identity<BasicInteraction>; _Compare = BILess; _Alloc = std::allocator<BasicInteraction>; typename std::__rb_tree::_Node_traits<_Val, typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val>::other>::pointer>::_Base_ptr = std::__rb_tree::_Node_traits<BasicInteraction, BasicInteraction*>::_Node_base*; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val>::other>::pointer = BasicInteraction*; typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val>::other = std::allocator<BasicInteraction>; class __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val> = __gnu_cxx::__alloc_traits<std::allocator<BasicInteraction>, BasicInteraction>::rebind<BasicInteraction>; typename _Alloc::value_type = BasicInteraction; typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val>::other::value_type = BasicInteraction; key_type = BasicInteraction]'
 2811 |           __comp = _M_key_compare(__k, _S_key(__x));
      |                    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/usr/include/c++/16/bits/stl_tree.h:2913:4:   required from 'std::pair<typename std::__rb_tree::_Node_traits<_Val, typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val>::other>::pointer>::_Iterator, bool> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_insert_unique(_Arg&&) [with _Arg = BasicInteraction; _Key = BasicInteraction; _Val = BasicInteraction; _KeyOfValue = std::_Identity<BasicInteraction>; _Compare = BILess; _Alloc = std::allocator<BasicInteraction>; typename std::__rb_tree::_Node_traits<_Val, typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val>::other>::pointer>::_Iterator = std::__rb_tree::_Node_traits<BasicInteraction, BasicInteraction*>::_Iterator; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val>::other>::pointer = BasicInteraction*; typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val>::other = std::allocator<BasicInteraction>; class __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val> = __gnu_cxx::__alloc_traits<std::allocator<BasicInteraction>, BasicInteraction>::rebind<BasicInteraction>; typename _Alloc::value_type = BasicInteraction; typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Val>::other::value_type = BasicInteraction]'
 2913 |         = _M_get_insert_unique_pos(_KeyOfValue()(__v));
      |           ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/16/bits/stl_set.h:546:25:   required from 'std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(value_type&&) [with _Key = BasicInteraction; _Compare = BILess; _Alloc = std::allocator<BasicInteraction>; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Key>::other>::const_iterator = std::_Rb_tree<BasicInteraction, BasicInteraction, std::_Identity<BasicInteraction>, BILess, std::allocator<BasicInteraction> >::const_iterator; typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Key>::other = std::allocator<BasicInteraction>; class __gnu_cxx::__alloc_traits<_Alloc>::rebind<_Key> = __gnu_cxx::__alloc_traits<std::allocator<BasicInteraction>, BasicInteraction>::rebind<BasicInteraction>; typename _Alloc::value_type = BasicInteraction; value_type = BasicInteraction]'
  546 |           _M_t._M_insert_unique(std::move(__x));
      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
GougeBlock3D.cpp:719:36:   required from here
  719 |             m_interactionSet.insert(
      |             ~~~~~~~~~~~~~~~~~~~~~~~^
  720 |               BasicInteraction(pParticle->getID(), (*it)->getID())
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  721 |             );
      |             ~                       
/usr/include/c++/16/bits/stl_tree.h:1402:72: error: static assertion failed: comparison object must be invocable with arguments of key_type
 1402 |             __is_invocable<const _Compare&, const _Key&, const _Key&>::value,
      |                                                                        ^~~~~
  • 'std::integral_constant<bool, false>::value' evaluates to false
/usr/include/c++/16/bits/stl_tree.h:1406:40: error: no match for call to '(const BILess) (const BasicInteraction&, const BasicInteraction&)'
 1406 |           return _M_impl._M_key_compare(__k1, __k2);
      |                  ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
In file included from ../Geometry/GougeBlock3D.h:21:
  • there is 1 candidate
    ../Geometry/BasicInteraction.h:78:7:
       78 | class BILess
          |       ^~~~~~
    • candidate 1: 'bool BILess::operator()(const BasicInteraction&, const BasicInteraction&)' (near match)
      ../Geometry/BasicInteraction.h:81:8:
         81 |   bool operator()(const BasicInteraction&,const BasicInteraction&);
            |        ^~~~~~~~
      • passing 'const BILess*' as 'this' argument discards qualifiers
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c RandomBoxPacker.cpp -o RandomBoxPacker.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c RandomSpherePacker.cpp -o RandomSpherePacker.o >/dev/null 2>&1
make[3]: *** [Makefile:707: GougeBlock3D.lo] Error 1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c GrainRandomBoxPacker.cpp -o GrainRandomBoxPacker.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c Packer.cpp -o Packer.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c BoxPacker.cpp -o BoxPacker.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c FaultedBlock2d.cpp -o FaultedBlock2d.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c RandomBlock.cpp -o RandomBlock.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c GougeConfig.cpp -o GougeConfig.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c RandomBlock3D.cpp -o RandomBlock3D.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c ARandomAssembly.cpp -o ARandomAssembly.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c GeometryInfo.cpp -o GeometryInfo.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c VtkXmlWriter.cpp -o VtkXmlWriter.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c BlockGenerator.cpp -o BlockGenerator.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c SphereBlockGenerator.cpp -o SphereBlockGenerator.o >/dev/null 2>&1
libtool: compile:  mpicxx -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include -I../Foundation -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/esys-particle-2.3.5+dfsg2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -std=c++14 -c RandomBlockGenerator.cpp -o RandomBlockGenerator.o >/dev/null 2>&1
make[3]: Leaving directory '/build/reproducible-path/esys-particle-2.3.5+dfsg2/Geometry'
make[2]: *** [Makefile:469: all-recursive] Error 1
make[2]: Leaving directory '/build/reproducible-path/esys-particle-2.3.5+dfsg2'
make[1]: *** [Makefile:400: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/esys-particle-2.3.5+dfsg2'
dh_auto_build: error: make -j128 returned exit code 2
make: *** [debian/rules:15: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2



More information about the debian-science-maintainers mailing list