[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/polymake_4.12-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
[...]
296 | }
| ^
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h: At global scope:
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:299:40: error: ‘uint32_t’ was not declared in this scope
299 | std::enable_if_t<sizeof(SizeT)==sizeof(uint32_t)> hash_combine(SizeT& h, SizeT k)
| ^~~~~~~~
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:299:40: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:299:49: error: template argument 1 is invalid
299 | std::enable_if_t<sizeof(SizeT)==sizeof(uint32_t)> hash_combine(SizeT& h, SizeT k)
| ^
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:299:51: error: redefinition of ‘template<class SizeT> int pm::hash_combine(SizeT&, SizeT)’
299 | std::enable_if_t<sizeof(SizeT)==sizeof(uint32_t)> hash_combine(SizeT& h, SizeT k)
| ^~~~~~~~~~~~
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:285:51: note: ‘template<class SizeT> int pm::hash_combine(SizeT&, SizeT)’ previously declared here
285 | std::enable_if_t<sizeof(SizeT)==sizeof(uint64_t)> hash_combine(SizeT& h, SizeT k)
| ^~~~~~~~~~~~
[34/1569] g++ -c -o /build/reproducible-path/polymake-4.12/build/Opt/staticlib/sympol/symmetrycomputation.o -MMD -MT /build/reproducible-path/polymake-4.12/build/Opt/staticlib/sympol/symmetrycomputation.o -MF /build/reproducible-path/polymake-4.12/build/Opt/staticlib/sympol/symmetrycomputation.o.d -fPIC -pipe -g -O2 -ffile-prefix-map=/build/reproducible-path/polymake-4.12=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++14 -ftemplate-depth-200 -fno-strict-aliasing -fopenmp -Wshadow -Wlogical-op -Wconversion -Wzero-as-null-pointer-constant -Wno-parentheses -Wno-error=unused-function -Wno-stringop-overflow -Wno-array-bounds -Wno-maybe-uninitialized -Wno-free-nonheap-object -DPOLYMAKE_WITH_FLINT -DPOLYMAKE_DEBUG=0 -DNDEBUG -O2 -Wno-deprecated-declarations -Wno-shadow -Wno-conversion -Wno-zero-as-null-pointer-constant -I/build/reproducible-path/polymake-4.12/include/external/permlib -Wno-unused-result -Wno-stringop-overflow /build/reproducible-path/polymake-4.12/bundled/sympol/external/sympol/sympol/symmetrycomputation.cpp && : 'COMPILER_USED=15.0.1'
[35/1569] g++ -c -o /build/reproducible-path/polymake-4.12/build/Opt/staticlib/sympol/facesuptosymmetrylist.o -MMD -MT /build/reproducible-path/polymake-4.12/build/Opt/staticlib/sympol/facesuptosymmetrylist.o -MF /build/reproducible-path/polymake-4.12/build/Opt/staticlib/sympol/facesuptosymmetrylist.o.d -fPIC -pipe -g -O2 -ffile-prefix-map=/build/reproducible-path/polymake-4.12=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++14 -ftemplate-depth-200 -fno-strict-aliasing -fopenmp -Wshadow -Wlogical-op -Wconversion -Wzero-as-null-pointer-constant -Wno-parentheses -Wno-error=unused-function -Wno-stringop-overflow -Wno-array-bounds -Wno-maybe-uninitialized -Wno-free-nonheap-object -DPOLYMAKE_WITH_FLINT -DPOLYMAKE_DEBUG=0 -DNDEBUG -O2 -Wno-deprecated-declarations -Wno-shadow -Wno-conversion -Wno-zero-as-null-pointer-constant -I/build/reproducible-path/polymake-4.12/include/external/permlib -Wno-unused-result -Wno-stringop-overflow /build/reproducible-path/polymake-4.12/bundled/sympol/external/sympol/sympol/facesuptosymmetrylist.cpp && : 'COMPILER_USED=15.0.1'
[36/1569] g++ -c -o /build/reproducible-path/polymake-4.12/build/Opt/apps/common/cpperl/ApproximateSet.o -MMD -MT /build/reproducible-path/polymake-4.12/build/Opt/apps/common/cpperl/ApproximateSet.o -MF /build/reproducible-path/polymake-4.12/build/Opt/apps/common/cpperl/ApproximateSet.o.d -fPIC -pipe -g -O2 -ffile-prefix-map=/build/reproducible-path/polymake-4.12=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++14 -ftemplate-depth-200 -fno-strict-aliasing -fopenmp -Wshadow -Wlogical-op -Wconversion -Wzero-as-null-pointer-constant -Wno-parentheses -Wno-error=unused-function -Wno-stringop-overflow -Wno-array-bounds -Wno-maybe-uninitialized -Wno-free-nonheap-object -DPOLYMAKE_WITH_FLINT -DPOLYMAKE_DEBUG=0 -DNDEBUG -O2 -DPOLYMAKE_APPNAME=common -I/build/reproducible-path/polymake-4.12/include/app-wrappers -I/build/reproducible-path/polymake-4.12/include/apps -I/build/reproducible-path/polymake-4.12/include/external/permlib -I/build/reproducible-path/polymake-4.12/include/external/TOSimplex -I/build/reproducible-path/polymake-4.12/include/external/Miniball -I/build/reproducible-path/polymake-4.12/include/core-wrappers -I/build/reproducible-path/polymake-4.12/include/core /build/reproducible-path/polymake-4.12/apps/common/cpperl/generated/ApproximateSet.cc && : 'COMPILER_USED=15.0.1'
FAILED: /build/reproducible-path/polymake-4.12/build/Opt/apps/common/cpperl/ApproximateSet.o
g++ -c -o /build/reproducible-path/polymake-4.12/build/Opt/apps/common/cpperl/ApproximateSet.o -MMD -MT /build/reproducible-path/polymake-4.12/build/Opt/apps/common/cpperl/ApproximateSet.o -MF /build/reproducible-path/polymake-4.12/build/Opt/apps/common/cpperl/ApproximateSet.o.d -fPIC -pipe -g -O2 -ffile-prefix-map=/build/reproducible-path/polymake-4.12=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++14 -ftemplate-depth-200 -fno-strict-aliasing -fopenmp -Wshadow -Wlogical-op -Wconversion -Wzero-as-null-pointer-constant -Wno-parentheses -Wno-error=unused-function -Wno-stringop-overflow -Wno-array-bounds -Wno-maybe-uninitialized -Wno-free-nonheap-object -DPOLYMAKE_WITH_FLINT -DPOLYMAKE_DEBUG=0 -DNDEBUG -O2 -DPOLYMAKE_APPNAME=common -I/build/reproducible-path/polymake-4.12/include/app-wrappers -I/build/reproducible-path/polymake-4.12/include/apps -I/build/reproducible-path/polymake-4.12/include/external/permlib -I/build/reproducible-path/polymake-4.12/include/external/TOSimplex -I/build/reproducible-path/polymake-4.12/include/external/Miniball -I/build/reproducible-path/polymake-4.12/include/core-wrappers -I/build/reproducible-path/polymake-4.12/include/core /build/reproducible-path/polymake-4.12/apps/common/cpperl/generated/ApproximateSet.cc && : 'COMPILER_USED=15.0.1'
In file included from /build/reproducible-path/polymake-4.12/include/core/polymake/internal/AVL.h:25,
from /build/reproducible-path/polymake-4.12/include/core/polymake/Set.h:25,
from /build/reproducible-path/polymake-4.12/include/core-wrappers/polymake/Set.h:21,
from /build/reproducible-path/polymake-4.12/include/core/polymake/ApproximateSet.h:26,
from /build/reproducible-path/polymake-4.12/include/core-wrappers/polymake/ApproximateSet.h:21,
from /build/reproducible-path/polymake-4.12/apps/common/cpperl/generated/ApproximateSet.cc:6:
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:285:40: error: ‘uint64_t’ was not declared in this scope
285 | std::enable_if_t<sizeof(SizeT)==sizeof(uint64_t)> hash_combine(SizeT& h, SizeT k)
| ^~~~~~~~
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:23:1: note: ‘uint64_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
22 | #include "polymake/TransformedContainer.h"
+++ |+#include <cstdint>
23 |
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:285:49: error: template argument 1 is invalid
285 | std::enable_if_t<sizeof(SizeT)==sizeof(uint64_t)> hash_combine(SizeT& h, SizeT k)
| ^
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h: In function ‘int pm::hash_combine(SizeT&, SizeT)’:
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:287:10: error: ‘uint64_t’ does not name a type [-Wtemplate-body]
287 | const uint64_t m = 0xc6a4a7935bd1e995ul;
| ^~~~~~~~
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:287:10: note: ‘uint64_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:290:9: error: ‘m’ was not declared in this scope [-Wtemplate-body]
290 | k *= m;
| ^
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:296:1: warning: no return statement in function returning non-void [-Wreturn-type]
296 | }
| ^
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h: At global scope:
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:299:40: error: ‘uint32_t’ was not declared in this scope
299 | std::enable_if_t<sizeof(SizeT)==sizeof(uint32_t)> hash_combine(SizeT& h, SizeT k)
| ^~~~~~~~
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:299:40: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:299:49: error: template argument 1 is invalid
299 | std::enable_if_t<sizeof(SizeT)==sizeof(uint32_t)> hash_combine(SizeT& h, SizeT k)
| ^
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:299:51: error: redefinition of ‘template<class SizeT> int pm::hash_combine(SizeT&, SizeT)’
299 | std::enable_if_t<sizeof(SizeT)==sizeof(uint32_t)> hash_combine(SizeT& h, SizeT k)
| ^~~~~~~~~~~~
/build/reproducible-path/polymake-4.12/include/core/polymake/internal/comparators.h:285:51: note: ‘template<class SizeT> int pm::hash_combine(SizeT&, SizeT)’ previously declared here
285 | std::enable_if_t<sizeof(SizeT)==sizeof(uint64_t)> hash_combine(SizeT& h, SizeT k)
| ^~~~~~~~~~~~
[37/1569] g++ -c -o /build/reproducible-path/polymake-4.12/build/Opt/staticlib/sympol/symmetrygroupconstruction/graphconstructiondefault.o -MMD -MT /build/reproducible-path/polymake-4.12/build/Opt/staticlib/sympol/symmetrygroupconstruction/graphconstructiondefault.o -MF /build/reproducible-path/polymake-4.12/build/Opt/staticlib/sympol/symmetrygroupconstruction/graphconstructiondefault.o.d -fPIC -pipe -g -O2 -ffile-prefix-map=/build/reproducible-path/polymake-4.12=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++14 -ftemplate-depth-200 -fno-strict-aliasing -fopenmp -Wshadow -Wlogical-op -Wconversion -Wzero-as-null-pointer-constant -Wno-parentheses -Wno-error=unused-function -Wno-stringop-overflow -Wno-array-bounds -Wno-maybe-uninitialized -Wno-free-nonheap-object -DPOLYMAKE_WITH_FLINT -DPOLYMAKE_DEBUG=0 -DNDEBUG -O2 -Wno-deprecated-declarations -Wno-shadow -Wno-conversion -Wno-zero-as-null-pointer-constant -I/build/reproducible-path/polymake-4.12/include/external/permlib -Wno-unused-result -Wno-stringop-overflow /build/reproducible-path/polymake-4.12/bundled/sympol/external/sympol/sympol/symmetrygroupconstruction/graphconstructiondefault.cpp && : 'COMPILER_USED=15.0.1'
ninja: build stopped: subcommand failed.
make[2]: *** [debian/rules:56: override_dh_auto_build] Error 1
make[2]: Leaving directory '/build/reproducible-path/polymake-4.12'
make[1]: *** [debian/rules:35: build] Error 2
make[1]: Leaving directory '/build/reproducible-path/polymake-4.12'
make: *** [debian/rules:35: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2