Bug#1096798: haskell-hashtables: ftbfs with GCC-15

Matthias Klose doko at debian.org
Mon Feb 17 17:18:45 GMT 2025


Package: src:haskell-hashtables
Version: 1.3.1-2
Severity: important
Tags: sid forky
User: debian-gcc at 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/haskell-hashtables_1.3.1-2_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

[...]
Using hpc version 0.68 found on system at: /usr/bin/hpc-ghc-9.6.6
Using hsc2hs version 0.68.9 found on system at: /usr/bin/hsc2hs-ghc-9.6.6
Using hscolour version 1.25 found on system at: /usr/bin/HsColour
No jhc found
Using ld found on system at: /usr/bin/x86_64-linux-gnu-ld
No pkg-config found
Using runghc version 9.6.6 found on system at: /usr/bin/runghc-9.6.6
Using strip version 2.44 found on system at: /usr/bin/strip
Using tar found on system at: /usr/bin/tar
No uhc found
touch configure-ghc-stamp
perl -d:Confess -MDebian::Debhelper::Buildsystem::Haskell::Recipes=/.*/ \
	-E 'build_recipe'
Running dh_listpackages
libghc-hashtables-dev
libghc-hashtables-prof
libghc-hashtables-doc
Preprocessing library for hashtables-1.3.1..
Building library for hashtables-1.3.1..
[ 1 of 12] Compiling Data.HashTable.Class ( src/Data/HashTable/Class.hs, dist-ghc/build/Data/HashTable/Class.o, dist-ghc/build/Data/HashTable/Class.dyn_o )
[ 2 of 12] Compiling Data.HashTable.Internal.Array ( src/Data/HashTable/Internal/Array.hs, dist-ghc/build/Data/HashTable/Internal/Array.o, dist-ghc/build/Data/HashTable/Internal/Array.dyn_o )
[ 3 of 12] Compiling Data.HashTable.Internal.IntArray ( src/Data/HashTable/Internal/IntArray.hs, dist-ghc/build/Data/HashTable/Internal/IntArray.o, dist-ghc/build/Data/HashTable/Internal/IntArray.dyn_o )
[ 4 of 12] Compiling Data.HashTable.Internal.UnsafeTricks ( src/Data/HashTable/Internal/UnsafeTricks.hs, dist-ghc/build/Data/HashTable/Internal/UnsafeTricks.o, dist-ghc/build/Data/HashTable/Internal/UnsafeTricks.dyn_o )
[ 5 of 12] Compiling Data.HashTable.Internal.Linear.Bucket ( src/Data/HashTable/Internal/Linear/Bucket.hs, dist-ghc/build/Data/HashTable/Internal/Linear/Bucket.o, dist-ghc/build/Data/HashTable/Internal/Linear/Bucket.dyn_o )
[ 6 of 12] Compiling Data.HashTable.Internal.Utils ( src/Data/HashTable/Internal/Utils.hs, dist-ghc/build/Data/HashTable/Internal/Utils.o, dist-ghc/build/Data/HashTable/Internal/Utils.dyn_o )
[ 7 of 12] Compiling Data.HashTable.Internal.CheapPseudoRandomBitStream ( src/Data/HashTable/Internal/CheapPseudoRandomBitStream.hs, dist-ghc/build/Data/HashTable/Internal/CheapPseudoRandomBitStream.o, dist-ghc/build/Data/HashTable/Internal/CheapPseudoRandomBitStream.dyn_o )
[ 8 of 12] Compiling Data.HashTable.Internal.CacheLine ( src/Data/HashTable/Internal/CacheLine.hs, dist-ghc/build/Data/HashTable/Internal/CacheLine.o, dist-ghc/build/Data/HashTable/Internal/CacheLine.dyn_o )
[ 9 of 12] Compiling Data.HashTable.ST.Basic ( src/Data/HashTable/ST/Basic.hs, dist-ghc/build/Data/HashTable/ST/Basic.o, dist-ghc/build/Data/HashTable/ST/Basic.dyn_o )
[10 of 12] Compiling Data.HashTable.ST.Cuckoo ( src/Data/HashTable/ST/Cuckoo.hs, dist-ghc/build/Data/HashTable/ST/Cuckoo.o, dist-ghc/build/Data/HashTable/ST/Cuckoo.dyn_o )
[11 of 12] Compiling Data.HashTable.ST.Linear ( src/Data/HashTable/ST/Linear.hs, dist-ghc/build/Data/HashTable/ST/Linear.o, dist-ghc/build/Data/HashTable/ST/Linear.dyn_o )
[12 of 12] Compiling Data.HashTable.IO ( src/Data/HashTable/IO.hs, dist-ghc/build/Data/HashTable/IO.o, dist-ghc/build/Data/HashTable/IO.dyn_o )
[ 1 of 12] Compiling Data.HashTable.Class ( src/Data/HashTable/Class.hs, dist-ghc/build/Data/HashTable/Class.p_o )
[ 2 of 12] Compiling Data.HashTable.Internal.Array ( src/Data/HashTable/Internal/Array.hs, dist-ghc/build/Data/HashTable/Internal/Array.p_o )
[ 3 of 12] Compiling Data.HashTable.Internal.IntArray ( src/Data/HashTable/Internal/IntArray.hs, dist-ghc/build/Data/HashTable/Internal/IntArray.p_o )
[ 4 of 12] Compiling Data.HashTable.Internal.UnsafeTricks ( src/Data/HashTable/Internal/UnsafeTricks.hs, dist-ghc/build/Data/HashTable/Internal/UnsafeTricks.p_o )
[ 5 of 12] Compiling Data.HashTable.Internal.Linear.Bucket ( src/Data/HashTable/Internal/Linear/Bucket.hs, dist-ghc/build/Data/HashTable/Internal/Linear/Bucket.p_o )
[ 6 of 12] Compiling Data.HashTable.Internal.Utils ( src/Data/HashTable/Internal/Utils.hs, dist-ghc/build/Data/HashTable/Internal/Utils.p_o )
[ 7 of 12] Compiling Data.HashTable.Internal.CheapPseudoRandomBitStream ( src/Data/HashTable/Internal/CheapPseudoRandomBitStream.hs, dist-ghc/build/Data/HashTable/Internal/CheapPseudoRandomBitStream.p_o )
[ 8 of 12] Compiling Data.HashTable.Internal.CacheLine ( src/Data/HashTable/Internal/CacheLine.hs, dist-ghc/build/Data/HashTable/Internal/CacheLine.p_o )
[ 9 of 12] Compiling Data.HashTable.ST.Basic ( src/Data/HashTable/ST/Basic.hs, dist-ghc/build/Data/HashTable/ST/Basic.p_o )
[10 of 12] Compiling Data.HashTable.ST.Cuckoo ( src/Data/HashTable/ST/Cuckoo.hs, dist-ghc/build/Data/HashTable/ST/Cuckoo.p_o )
[11 of 12] Compiling Data.HashTable.ST.Linear ( src/Data/HashTable/ST/Linear.hs, dist-ghc/build/Data/HashTable/ST/Linear.p_o )
[12 of 12] Compiling Data.HashTable.IO ( src/Data/HashTable/IO.hs, dist-ghc/build/Data/HashTable/IO.p_o )

cbits/default.c:201:6: error:
     error: conflicting types for ‘check_impl_specific’; have ‘void(int *, int *)’
      201 | void check_impl_specific(int* num_tests, int* num_errors) {
          |      ^~~~~~~~~~~~~~~~~~~
    |
201 | void check_impl_specific(int* num_tests, int* num_errors) {
    |      ^

In file included from cbits/default.c:3:0: error: 

cbits/defs.h:33:6: error:
     note: previous declaration of ‘check_impl_specific’ with type ‘void(void)’
       33 | void check_impl_specific();
          |      ^~~~~~~~~~~~~~~~~~~
   |
33 | void check_impl_specific();
   |      ^
`x86_64-linux-gnu-gcc' failed in phase `C Compiler'. (Exit code: 1)
-e: error: debian/hlibrary.setup build --builddir=dist-ghc returned exit code 1
 at /usr/share/perl5/Debian/Debhelper/Dh_Lib.pm line 877.
	Debian::Debhelper::Dh_Lib::error("debian/hlibrary.setup build --builddir=dist-ghc returned exit"...) called at /usr/share/perl5/Debian/Debhelper/Dh_Lib.pm line 616
	Debian::Debhelper::Dh_Lib::error_exitcode("debian/hlibrary.setup build --builddir=dist-ghc") called at /usr/share/perl5/Debian/Debhelper/Dh_Lib.pm line 479
	Debian::Debhelper::Dh_Lib::doit("debian/hlibrary.setup", "build", "--builddir=dist-ghc") called at /usr/share/perl5/Debian/Debhelper/Buildsystem/Haskell/Recipes.pm line 656
	Debian::Debhelper::Buildsystem::Haskell::Recipes::build_recipe() called at -e line 1
make: *** [/usr/share/cdbs/1/class/hlibrary.mk:158: build-ghc-stamp] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-haskell-maintainers mailing list