
#12506: Compile time regression in GHC 8. -------------------------------------+------------------------------------- Reporter: deech | Owner: bgamari Type: bug | Status: new Priority: high | Milestone: Component: Compiler | Version: 8.0.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by bgamari): Looking at the desugared Core of `Tree` (which is 2.4 gigabytes!) it seems we end up with lots of equivalent yet repeated equality coercions at the top level. For instance, there are 64 coercions of the form, {{{#!hs -- RHS size: {terms: 2, types: 22, coercions: 691} $d~_aDMR :: (Match (Graphics.UI.FLTK.LowLevel.Hierarchy.CMenuItem Base) :: *) ~ (FindOp MenuItem MenuItem (SetLabelsize ()) :: *) }}} However, it turns out that this is a drop in the bucket compared to, {{{ -- RHS size: {terms: 8,634, types: 10,620, coercions: 1,621,550} make_window :: IO (Ref Window) }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12506#comment:9 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler