[GHC] #13264: GHC panic with (->) generalization branch while compiling lens
GHC
ghc-devs at haskell.org
Fri Feb 10 20:40:35 UTC 2017
#13264: GHC panic with (->) generalization branch while compiling lens
-------------------------------------+-------------------------------------
Reporter: bgamari | Owner:
Type: bug | Status: new
Priority: normal | Milestone: 8.2.1
Component: Compiler | Version: 8.1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Description changed by bgamari:
@@ -1,1 +1,1 @@
- While testing characterizing the performance impact of the Typeable
+ While characterizing the performance impact of the Typeable
New description:
While characterizing the performance impact of the Typeable
branch (`wip/ttypeable`) against Hackage packages I have found that `lens`
manages to break the `(->)` kind-generalization patch. Specifically,
`TcCanonical.can_eq_nc` induces a panic by `tcRepSplitTyApp_maybe` during
compilation of `Control.Lens.Traversal.holesOf`,
{{{
ghc-stage2: panic! (the 'impossible' happened)
(GHC version 8.1.20170207 for x86_64-unknown-linux):
tcRepSplitTyConApp_maybe
([] |> <*>_N ->_N Sym {alzj}) a_alzd[tau:5]
c_alzb[tau:5]
Call stack:
CallStack (from HasCallStack):
prettyCurrentCallStack, called at
compiler/utils/Outputable.hs:1188:58 in ghc:Outputable
callStackDoc, called at compiler/utils/Outputable.hs:1192:37
in ghc:Outputable
pprPanic, called at compiler/typecheck/TcType.hs:1456:5 in
ghc:TcType
tcRepSplitTyConApp_maybe, called at
compiler/typecheck/TcCanonical.hs:617:25 in ghc:TcCanonical
}}}
The last thing emitted by tc-trace is,
{{{
can_eq_nc
False
[WD] hole{alyP} {0}:: (p_alyn[tau:5] :: TYPE p_alym[tau:5])
GHC.Prim.~#
(cat_alyK[tau:6] b_alyM[tau:6] c_alyN[tau:6]
:: *)
nominal equality
([] |> <*>_N ->_N Sym {alzj}) a_alzd[tau:5] -> c_alzb[tau:5]
p_alyn[tau:5]
cat_alyK[tau:6] b_alyM[tau:6] c_alyN[tau:6]
cat_alyK[tau:6] b_alyM[tau:6] c_alyN[tau:6]
}}}
--
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13264#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list