Hi, bagel 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/bagel_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. [...] | ^~~~~~~~~~~~~~ /bin/bash ../../libtool --tag=CXX --mode=compile mpicxx -std=gnu++11 -DHAVE_CONFIG_H -I. -I../.. -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include -I../.. -g1 -O2 -DNDEBUG -DZDOT_RETURN -ffile-prefix-map=/build/reproducible-path/bagel-1.2.2=. -c -o libint/libint.lo libint/libint.cc libtool: compile: mpicxx -std=gnu++11 -DHAVE_CONFIG_H -I. -I../.. -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include -I../.. -g1 -O2 -DNDEBUG -DZDOT_RETURN -ffile-prefix-map=/build/reproducible-path/bagel-1.2.2=. -c libint/libint.cc -o libint/libint.o /bin/bash ../../libtool --tag=CXX --mode=compile mpicxx -std=gnu++11 -DHAVE_CONFIG_H -I. -I../.. -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include -I../.. -g1 -O2 -DNDEBUG -DZDOT_RETURN -ffile-prefix-map=/build/reproducible-path/bagel-1.2.2=. -c -o libint/glibint.lo libint/glibint.cc libtool: compile: mpicxx -std=gnu++11 -DHAVE_CONFIG_H -I. -I../.. -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include -I../.. -g1 -O2 -DNDEBUG -DZDOT_RETURN -ffile-prefix-map=/build/reproducible-path/bagel-1.2.2=. -c libint/glibint.cc -o libint/glibint.o /bin/bash ../../libtool --tag=CXX --mode=compile mpicxx -std=gnu++11 -DHAVE_CONFIG_H -I. -I../.. -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include -I../.. -g1 -O2 -DNDEBUG -DZDOT_RETURN -ffile-prefix-map=/build/reproducible-path/bagel-1.2.2=. -c -o ecp/angularbatch.lo ecp/angularbatch.cc libtool: compile: mpicxx -std=gnu++11 -DHAVE_CONFIG_H -I. -I../.. -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include -I../.. -g1 -O2 -DNDEBUG -DZDOT_RETURN -ffile-prefix-map=/build/reproducible-path/bagel-1.2.2=. -c ecp/angularbatch.cc -o ecp/angularbatch.o In file included from ecp/angularbatch.cc:26: ../../src/util/math/bessel.h: In member function 'double bagel::MSphBesselI::compute(int, double) const': ../../src/util/math/bessel.h:71:44: error: 'numeric_limits' is not a member of 'std' 71 | } while (std::fabs(current) > std::numeric_limits<double>::epsilon()); | ^~~~~~~~~~~~~~ ../../src/util/math/bessel.h:71:59: error: expected primary-expression before 'double' 71 | } while (std::fabs(current) > std::numeric_limits<double>::epsilon()); | ^~~~~~ ../../src/util/math/bessel.h:71:59: error: expected ')' before 'double' ../../src/util/math/bessel.h:71:17: note: to match this '(' 71 | } while (std::fabs(current) > std::numeric_limits<double>::epsilon()); | ^ ../../src/util/math/bessel.h:71:59: error: expected ';' before 'double' 71 | } while (std::fabs(current) > std::numeric_limits<double>::epsilon()); | ^~~~~~ ../../src/util/math/bessel.h:71:65: error: expected unqualified-id before '>' token 71 | } while (std::fabs(current) > std::numeric_limits<double>::epsilon()); | ^ In file included from ../../btas/range.h:27, from ../../btas/defaults.h:15, from ../../btas/tensor.h:11, from ../../btas/generic/axpy_impl.h:8, from ../../btas/btas.h:8, from ../../src/util/math/btas_interface.h:38, from ../../src/util/math/vectorb.h:30, from ../../src/util/math/matrix_base.h:33, from ../../src/util/math/matrix.h:32, from ../../src/util/math/zmatrix.h:30, from ../../src/molecule/shell.h:29, from ../../src/molecule/atom.h:29, from ../../src/integral/ecp/angularbatch.h:29, from ecp/angularbatch.cc:29: ../../btas/util/functional.h: At global scope: ../../btas/util/functional.h:30:58: warning: 'template<class _Arg, class _Result> struct std::unary_function' is deprecated [-Wdeprecated-declarations] 30 | struct first_of_pair< std::pair<T1,T2> > : public std::unary_function<const std::pair<T1,T2>&,const T1&> { | ^~~~~~~~~~~~~~ In file included from /usr/include/c++/16/string:52, from /usr/include/c++/16/bits/locale_classes.h:43, from /usr/include/c++/16/bits/ios_base.h:43, from /usr/include/c++/16/ios:46, from /usr/include/c++/16/bits/ostream.h:43, from /usr/include/c++/16/ostream:42, from /usr/include/c++/16/iostream:43, from ../../src/util/math/bessel.h:30: /usr/include/c++/16/bits/stl_function.h:120:12: note: declared here 120 | struct unary_function | ^~~~~~~~~~~~~~ ../../btas/util/functional.h:37:59: warning: 'template<class _Arg, class _Result> struct std::unary_function' is deprecated [-Wdeprecated-declarations] 37 | struct second_of_pair< std::pair<T1,T2> > : public std::unary_function<const std::pair<T1,T2>&,const T2&> { | ^~~~~~~~~~~~~~ /usr/include/c++/16/bits/stl_function.h:120:12: note: declared here 120 | struct unary_function | ^~~~~~~~~~~~~~ make[4]: *** [Makefile:1179: ecp/angularbatch.lo] Error 1 make[4]: Leaving directory '/build/reproducible-path/bagel-1.2.2/src/integral' make[3]: *** [Makefile:617: all-recursive] Error 1 make[3]: Leaving directory '/build/reproducible-path/bagel-1.2.2/src' make[2]: *** [Makefile:430: all-recursive] Error 1 make[2]: Leaving directory '/build/reproducible-path/bagel-1.2.2' make[1]: *** [Makefile:362: all] Error 2 make[1]: Leaving directory '/build/reproducible-path/bagel-1.2.2' dh_auto_build: error: make -j1 returned exit code 2 make: *** [debian/rules:12: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2