Skip to content

freer-simple fails to build on 9.6.0-alpha2 with a superclass error

See master ticket #22912 (closed)

Summary

When building the latest version package freer-simple from Hackage on alpha2, it fails with a superclass error. Building on alpha1 has no problem. I guess this is due to !7050 (merged), but in my impression freer-simple is a fairly popular package, so this could be a problem.

Steps to reproduce

cabal install freer-simple --allow-newer

Fails with:

Configuring library for freer-simple-1.2.1.2..
Preprocessing library for freer-simple-1.2.1.2..
Building library for freer-simple-1.2.1.2..
[ 1 of 14] Compiling Data.FTCQueue    ( src/Data/FTCQueue.hs, dist/build/Data/FTCQueue.o, dist/build/Data/FTCQueue.dyn_o )
[ 2 of 14] Compiling Data.OpenUnion.Internal ( src/Data/OpenUnion/Internal.hs, dist/build/Data/OpenUnion/Internal.o, dist/build/Data/OpenUnion/Internal.dyn_o )
[ 3 of 14] Compiling Data.OpenUnion   ( src/Data/OpenUnion.hs, dist/build/Data/OpenUnion.o, dist/build/Data/OpenUnion.dyn_o )
[ 4 of 14] Compiling Control.Monad.Freer.Internal ( src/Control/Monad/Freer/Internal.hs, dist/build/Control/Monad/Freer/Internal.o, dist/build/Control/Monad/Freer/Internal.dyn_o )

src/Control/Monad/Freer/Internal.hs:156:10: error: [GHC-39999]
    • Could not deduce ‘Applicative b’
        arising from the superclasses of an instance declaration
      from the context: (MonadBase b m, LastMember m effs)
        bound by the instance declaration
        at src/Control/Monad/Freer/Internal.hs:156:10-69
      Possible fix:
        add (Applicative b) to the context of the instance declaration
    • In the instance declaration for ‘MonadBase b (Eff effs)’
    |
156 | instance (MonadBase b m, LastMember m effs) => MonadBase b (Eff effs) where
    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

src/Control/Monad/Freer/Internal.hs:156:10: error: [GHC-39999]
    • Could not deduce ‘Monad b’
        arising from the superclasses of an instance declaration
      from the context: (MonadBase b m, LastMember m effs)
        bound by the instance declaration
        at src/Control/Monad/Freer/Internal.hs:156:10-69
      Possible fix:
        add (Monad b) to the context of the instance declaration
    • In the instance declaration for ‘MonadBase b (Eff effs)’
    |
156 | instance (MonadBase b m, LastMember m effs) => MonadBase b (Eff effs) where
    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Environment

  • GHC version used: 9.6.0.20230128

Optional:

  • Operating System: Arch Linux
  • System Architecture: x64
Edited by Simon Peyton Jones
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information