Double assignment to coercion variable
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]
Trac metadata
Trac field | Value |
---|---|
Version | 6.8.2 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | Unknown |
Architecture | Unknown |