/tmp/stack14530/compdata-0.12/src/Data/Comp/Thunk.hs:87:28: error:
* Could not deduce (MonadFail m) arising from a use of `fail'
from the context: (Monad m, g :<: f)
bound by the type signature for:
whnfPr :: forall (m :: * -> *) (g :: * -> *) (f :: * -> *).
(Monad m, g :<: f) =>
TermT m f -> m (g (TermT m f))
at src/Data/Comp/Thunk.hs:83:1-62
Possible fix:
add (MonadFail m) to the context of
the type signature for:
whnfPr :: forall (m :: * -> *) (g :: * -> *) (f :: * -> *).
(Monad m, g :<: f) =>
TermT m f -> m (g (TermT m f))
* In the expression: fail "projection failed"
In a case alternative: Nothing -> fail "projection failed"
In a stmt of a 'do' block:
case proj res of
Just res' -> return res'
Nothing -> fail "projection failed"
|
87 | Nothing -> fail "projection failed"
| ^^^^^^^^^^^^^^^^^^^^^^^^
Full output: