#2212: Double assignment to coercion variable
-------------------------+--------------------------------------------------
Reporter: simonpj | Owner: chak
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 6.8.2
Severity: normal | Keywords:
Difficulty: Unknown | Testcase: equal
Architecture: Unknown | Os: Unknown
-------------------------+--------------------------------------------------
Test `gadt/equal` is failing with
{{{
ghc-6.9: panic! (the 'impossible' happened)
(GHC version 6.9 for x86_64-unknown-linux):
ASSERT failed! file typecheck/TcMType.lhs line 520 t_aaS{tv} [tau]
}}}
(You may not see this if you don't build a DEBUG compiler.)
The problem is that the same coercion variable is being assigned a value
twice. Here it is with more info printed, showing the existing and new
coercions
{{{
ghc-6.9: panic! (the 'impossible' happened)
(GHC version 6.9 for x86_64-unknown-linux):
writeMetaTyVar
t_aaS{tv} [tau]
ghc-prim:GHC.Prim.trans{(w) tc 34y}
t_abf{tv} [tau]
(ghc-prim:GHC.Prim.sym{(w) tc 34v} $co${tc abb}
[tv])
ghc-prim:GHC.Prim.trans{(w) tc 34y}
(ghc-prim:GHC.Prim.trans{(w) tc 34y}
(ghc-prim:GHC.Prim.trans{(w) tc 34y}
$co${tc ab2} [tv] (a{tv aaz} [sk], $co${tc
aaV} [tv]))
($co${tc aaY} [tv], b{tv aay} [sk]))
t_ab8{tv} [tau]
}}}
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/2212>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs