Bug#1126209: haskell-memoize: FTBFS: src/Data/Function/Memoize/TH.hs:179:21: error: [GHC-83865]
Santiago Vila
sanvila at debian.org
Fri Jan 23 11:37:30 GMT 2026
Package: src:haskell-memoize
Version: 1.1.2-3
Severity: serious
Tags: ftbfs forky sid
Dear maintainer:
During a rebuild of all packages in unstable, this package failed to build.
Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:
https://people.debian.org/~sanvila/build-logs/202601/
About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.
If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.
If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:haskell-memoize, so that this is still
visible in the BTS web page for this package.
Thanks.
--------------------------------------------------------------------------------
[...]
debian/rules clean
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
[... snipped ...]
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
perl -d:Confess -MDebian::Debhelper::Buildsystem::Haskell::Recipes=/.*/ \
-E 'make_setup_recipe'
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
Running ghc --make Setup.hs -o debian/hlibrary.setup
[1 of 2] Compiling Main ( Setup.hs, Setup.o )
[2 of 2] Linking debian/hlibrary.setup
perl -d:Confess -MDebian::Debhelper::Buildsystem::Haskell::Recipes=/.*/ \
-E 'configure_recipe'
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
Running find . ! -newer /tmp/7rHvyWGPPz -exec touch -d 1998-01-01 UTC {} ;
Running dh_listpackages
libghc-memoize-dev
libghc-memoize-prof
libghc-memoize-doc
Running dh_listpackages
libghc-memoize-dev
libghc-memoize-prof
libghc-memoize-doc
Running dpkg-buildflags --get LDFLAGS
-Wl,-z,relro
Running debian/hlibrary.setup configure --ghc -v2 --package-db=/var/lib/ghc/package.conf.d --prefix=/usr --libdir=/usr/lib/haskell-packages/ghc/lib --libexecdir=/usr/lib --builddir=dist-ghc --ghc-option=-optl-Wl,-z,relro --haddockdir=/usr/lib/ghc-doc/haddock/memoize-1.1.2/ --datasubdir=memoize --htmldir=/usr/share/doc/libghc-memoize-doc/html/ --enable-library-profiling
Using Parsec parser
Configuring memoize-1.1.2...
Dependency base >=4.8 && <5: using base-4.20.2.0
Dependency template-haskell >=2 && <3: using template-haskell-2.22.0.0
Source component graph: component lib
Configured component graph:
component memoize-1.1.2-1ZVoJId8d0guy07uZlvGO
include base-4.20.2.0-d92c
include template-haskell-2.22.0.0-1850
Linked component graph:
unit memoize-1.1.2-1ZVoJId8d0guy07uZlvGO
include base-4.20.2.0-d92c
include template-haskell-2.22.0.0-1850
Data.Function.Memoize=memoize-1.1.2-1ZVoJId8d0guy07uZlvGO:Data.Function.Memoize
Ready component graph:
definite memoize-1.1.2-1ZVoJId8d0guy07uZlvGO
depends base-4.20.2.0-d92c
depends template-haskell-2.22.0.0-1850
Using Cabal-3.12.1.0 compiled by ghc-9.10
Using compiler: ghc-9.10.3
Using install prefix: /usr
Executables installed in: /usr/bin
Libraries installed in:
/usr/lib/haskell-packages/ghc/lib/x86_64-linux-ghc-9.10.3-2b2a/memoize-1.1.2-1ZVoJId8d0guy07uZlvGO
Dynamic Libraries installed in:
/usr/lib/haskell-packages/ghc/lib/x86_64-linux-ghc-9.10.3-2b2a
Private executables installed in:
/usr/lib/x86_64-linux-ghc-9.10.3-2b2a/memoize-1.1.2
Data files installed in: /usr/share/memoize
Documentation installed in:
/usr/share/doc/x86_64-linux-ghc-9.10.3-2b2a/memoize-1.1.2
Configuration files installed in: /usr/etc
No alex found
Using ar found on system at: /usr/bin/x86_64-linux-gnu-ar
No c2hs found
No cpphs found
No doctest found
Using gcc version 15 found on system at: /usr/bin/x86_64-linux-gnu-gcc
Using ghc version 9.10.3 found on system at: /usr/bin/ghc
Using ghc-pkg version 9.10.3 found on system at: /usr/bin/ghc-pkg-9.10.3
No ghcjs found
No ghcjs-pkg found
No greencard found
Using haddock version 2.31.1 found on system at: /usr/bin/haddock-ghc-9.10.3
No happy found
Using haskell-suite found on system at: haskell-suite-dummy-location
Using haskell-suite-pkg found on system at: haskell-suite-pkg-dummy-location
No hmake found
Using hpc version 0.69 found on system at: /usr/bin/hpc-ghc-9.10.3
Using hsc2hs version 0.68.10 found on system at: /usr/bin/hsc2hs-ghc-9.10.3
Using hscolour version 1.25 found on system at: /usr/bin/HsColour
No jhc found
Using ld found on system at: /usr/bin/ld
No pkg-config found
Using runghc version 9.10.3 found on system at: /usr/bin/runghc-9.10.3
Using strip version 2.45 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'
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
/usr/share/haskell-devscripts/GetCabalVersion.hs:17:50: warning: [GHC-63394] [-Wx-partial]
In the use of âheadâ
(imported from Prelude, but defined in GHC.Internal.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
|
17 | gpd <- readGenericPackageDescription silent (head args)
| ^^^^
Running dh_listpackages
libghc-memoize-dev
libghc-memoize-prof
libghc-memoize-doc
Preprocessing library for memoize-1.1.2...
Building library for memoize-1.1.2...
[1 of 3] Compiling Data.Function.Memoize.Class ( src/Data/Function/Memoize/Class.hs, dist-ghc/build/Data/Function/Memoize/Class.o, dist-ghc/build/Data/Function/Memoize/Class.dyn_o )
[2 of 3] Compiling Data.Function.Memoize.TH ( src/Data/Function/Memoize/TH.hs, dist-ghc/build/Data/Function/Memoize/TH.o, dist-ghc/build/Data/Function/Memoize/TH.dyn_o )
src/Data/Function/Memoize/TH.hs:179:21: error: [GHC-83865]
⢠Couldn't match type âBndrVisâ with â()â
Expected: [TyVarBndr ()]
Actual: [TyVarBndr BndrVis]
⢠In the expression: tvbs
In the first argument of âreturnâ, namely â(name, tvbs, conInfos)â
In a stmt of a 'do' block: return (name, tvbs, conInfos)
|
179 | return (name, tvbs, conInfos)
| ^^^^
src/Data/Function/Memoize/TH.hs:182:21: error: [GHC-83865]
⢠Couldn't match type âBndrVisâ with â()â
Expected: [TyVarBndr ()]
Actual: [TyVarBndr BndrVis]
⢠In the expression: tvbs
In the first argument of âreturnâ, namely â(name, tvbs, [conInfo])â
In a stmt of a 'do' block: return (name, tvbs, [conInfo])
|
182 | return (name, tvbs, [conInfo])
| ^^^^
-e: error: debian/hlibrary.setup build --builddir=dist-ghc returned exit code 1
at /usr/share/perl5/Debian/Debhelper/Dh_Lib.pm line 900.
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 639
Debian::Debhelper::Dh_Lib::error_exitcode("debian/hlibrary.setup build --builddir=dist-ghc") called at /usr/share/perl5/Debian/Debhelper/Dh_Lib.pm line 502
Debian::Debhelper::Dh_Lib::doit("debian/hlibrary.setup", "build", "--builddir=dist-ghc") called at /usr/share/perl5/Debian/Debhelper/Buildsystem/Haskell/Recipes.pm line 796
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 failed with exit status 2
--------------------------------------------------------------------------------
More information about the Pkg-haskell-maintainers
mailing list