#1096798 haskell-hashtables: ftbfs with GCC-15

#1096798#5
Date:
2025-02-17 17:18:45 UTC
From:
To:
[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

#1096798#14
Date:
2025-09-06 13:40:38 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
haskell-hashtables, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1096798@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Clint Adams <clint@debian.org> (supplier of updated haskell-hashtables package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Sat, 06 Sep 2025 09:19:53 -0400
Source: haskell-hashtables
Architecture: source
Version: 1.4.2-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Haskell Group <pkg-haskell-maintainers@lists.alioth.debian.org>
Changed-By: Clint Adams <clint@debian.org>
Closes: 1096798
Changes:
 haskell-hashtables (1.4.2-1) unstable; urgency=medium
 .
   * New upstream version.
     - GCC 15 compatibility fixes.  closes: #1096798.
Checksums-Sha1:
 510e663cb9f929b3278626efac17a6a818f6bb2a 2682 haskell-hashtables_1.4.2-1.dsc
 149d1d7c9349e90a4dd7afd20088d9c3949da685 58869 haskell-hashtables_1.4.2.orig.tar.gz
 5b7d3cbb5515af006cd2d70dafdceed965b4de25 3564 haskell-hashtables_1.4.2-1.debian.tar.xz
 2d830c23e224c8e87112af72d12adcba7fbc9040 8813 haskell-hashtables_1.4.2-1_source.buildinfo
Checksums-Sha256:
 3985caa97a0db0d3ab1eca68a251bef54271c74b8f20d0b9a4c7fbacc9a0cde6 2682 haskell-hashtables_1.4.2-1.dsc
 ca0e299fee6c0c918f45ce0907afbff1c3891998bb792d1717e4d5f12350ef0d 58869 haskell-hashtables_1.4.2.orig.tar.gz
 a929220d0005ab1bab85c8993bcbae4012d40ffb3d94d0606a8f391eda8902c7 3564 haskell-hashtables_1.4.2-1.debian.tar.xz
 addf242cddaf6749ee728006949f6c259843565e5d925d5a8e3fea254940092f 8813 haskell-hashtables_1.4.2-1_source.buildinfo
Files:
 e4f5165042ed95ea33bf8248bc8924e8 2682 haskell optional haskell-hashtables_1.4.2-1.dsc
 566ae135834b8ac3547651aabe4da4a0 58869 haskell optional haskell-hashtables_1.4.2.orig.tar.gz
 f13b59f4a528baf56eb8a8443e027c33 3564 haskell optional haskell-hashtables_1.4.2-1.debian.tar.xz
 ae05590db973f17f4be8336def196445 8813 haskell optional haskell-hashtables_1.4.2-1_source.buildinfo
-----BEGIN PGP SIGNATURE-----

wsG7BAEBCgBvBYJovDWRCRD200lbsK6aAkcUAAAAAAAeACBzYWx0QG5vdGF0aW9u
cy5zZXF1b2lhLXBncC5vcmcAyoFBhaTRw4ON3QeT+ZDfbfbzDjnSIfl7sysvBKtA
ERYhBCEAoyxG+JWvOgh4OvbTSVuwrpoCAAB6EQ//Zg8ll+jh0ErhhafBZe+iyLJn
2tkGljWQ5evZqRD6uAgmGmcgutJLkWVD+ZrbhaU6rRWmhCBORiOs5OiM0UzPLT7Z
M0HBnmbfwjOZkLY+vcm2sWQlWLAnTDHYigmneivNS/dfDALhwv1LrIVkanOWSETG
bLTEZ/3Gj0GZGabvLKkf+wBxejrKeh5nIbHcwj9G45tue8EkH2IvtcMFEdOxh4me
FzybxdH+2ThNcmdVRsmtyD9qFc38q88QFVHZD1YC2cs//8Minse8sXsXCP0H80cf
ysM8JyPdxYsKnvlXImprU6C997Q5/bKfRJ8+nKj0ZF5PGO8O4fxJfLO7NaZ2kF7c
8XoA/nU04xfNvS8cE0IdP5wIPUYRJlndzv1IMXFpiLpmXCmntO++dXdlURFHSNc5
zlnKX+weal7laPULTgzIA4AupFW6Od7dJo5FOJgmjTYB2Cac7dDNGu1nsPPdVWbM
4/JR478Q04R/kf45bR7Q15MkkMl/hn6Uf3u6hiu+hcK5biSfnrGNNWW5gWQmSdbL
vOqyGX+5+HetndSAhRCQgXORHN32qSCTZi32uxacSTnmq9njaeemftNB9PrzlLXY
ieG9O18i+keC5PbRqyXYVEIkgkH/erwPJwQetyll9Qh2T0GK/p2HW4/j5kgl50OY
FSc6G5/VR4dpZTDss+8=
=LHcB
-----END PGP SIGNATURE-----