Skip to content

The function `lift'ghc: panic! (the 'impossible' happened)

The error message I got doesn't even make much sense (or at least I don't understand it). Here it is:

src/Splices.hs:22:18:
    Couldn't match kind `* -> *' with `*'
    Expected type: (a1 -> a1)
                   -> heist-0.14.1.1:Heist.Internal.Types.HeistState.HeistT m m Text
      Actual type: (a1 -> a1)
                   -> heist-0.14.1.1:Heist.Internal.Types.HeistState.HeistT m m Text
    Kind incompatibility when matching types:
      a_t -> a_t :: * -> *
      a1 -> a1 :: *
    The function `lift'ghc: panic! (the 'impossible' happened)
  (GHC version 7.6.3 for x86_64-unknown-linux):
	kindFunResult ghc-prim:GHC.Prim.*{(w) tc 34d}

Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

As far as I understand it says that two things of the same type (a -> a) have different kind...

And the offending function is really simple:

import Happstack.Server (path)
import Heist.Interpreted (textSplice)


insertFromPath :: Splice m
insertFromPath = lift path id >>= textSplice

I believe that m should evaluate to ServerPartT IO from Happstack.Server module. I append the whole source code.

Trac metadata
Trac field Value
Version 7.10.3
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Compiler
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information