[GHC] #7128: Panic "lookupVarEnv_NF" when using a functional dependency with a kind variable
GHC
cvs-ghc at haskell.org
Wed Aug 8 15:31:37 CEST 2012
#7128: Panic "lookupVarEnv_NF" when using a functional dependency with a kind
variable
--------------------------------+-------------------------------------------
Reporter: goldfire | Owner:
Type: bug | Status: new
Priority: normal | Component: Compiler
Version: 7.5 | Keywords: PolyKinds FunctionalDependencies
Os: Unknown/Multiple | Architecture: Unknown/Multiple
Failure: Compile-time crash | Testcase:
Blockedby: | Blocking:
Related: |
--------------------------------+-------------------------------------------
The following code causes a panic:
{{{
{-# LANGUAGE PolyKinds, DataKinds, MultiParamTypeClasses,
FunctionalDependencies
#-}
class Foo a (b :: k) | a -> k
instance Foo Bool False
}}}
The error is
{{{
ghc-stage2: panic! (the 'impossible' happened)
(GHC version 7.7.20120807 for x86_64-apple-darwin):
lookupVarEnv_NF: Nothing
}}}
In previous versions of GHC 7.5.x, a functional dependency of this nature
worked just fine and had the expected behavior of fixing the value of
{{{k}}} once {{{a}}} was known. It's unclear to me whether this should
compile or not, but it shouldn't cause a panic. I believe that my code
that used the functional dependency could use {{{a -> b}}} in place of
{{{a -> k}}} with no ill effect, so turning this into an error is not a
problem.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7128>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the Glasgow-haskell-bugs
mailing list