Error in 'lift' line causes the 'impossible' to happen
import Control.Monad.Trans.Class (lift)
import Control.Monad.Trans.Maybe (MaybeT)
foo :: MaybeT IO ()
foo = lift putStrLn "foo"
This code caused the following output from GHC:
Couldn't match kind `* -> *' with `*'
Expected type: [Char] -> MaybeT IO ()
Actual type: [Char] -> MaybeT IO ()
Kind incompatibility when matching types:
[Char] :: * -> *
[Char] :: *
The function `lift'ghc: panic! (the 'impossible' happened)
(GHC version 7.6.3 for x86_64-unknown-linux):
kindFunResult
<<details unavailable>>
The line should of course be lift $ putStrLn "foo"
. Apologies if this is a duplicate bug.