[GHC] #13377: Compiler error: Simplifier ticks exhausted

GHC ghc-devs at haskell.org
Sun Mar 5 13:39:18 UTC 2017


#13377: Compiler error: Simplifier ticks exhausted
-------------------------------------+-------------------------------------
           Reporter:                 |             Owner:  (none)
  simplifierticks                    |
               Type:  bug            |            Status:  new
           Priority:  normal         |         Milestone:
          Component:  Compiler       |           Version:  8.0.1
           Keywords:                 |  Operating System:  Windows
       Architecture:  x86_64         |   Type of failure:  Compile-time
  (amd64)                            |  crash or panic
          Test Case:                 |        Blocked By:
           Blocking:                 |   Related Tickets:
Differential Rev(s):                 |         Wiki Page:
-------------------------------------+-------------------------------------
 2.4 Programming jointly with types and values

 Exercise 2.4.1 (Fixpoint). The lambda term:

 y = = \f->(\x->f (x x)) (\x->f (x x))

 (that encodes a fixed point combinator in the untyped lambda calculus)
 does not type check in Haskell. Try it! Interestingly though, recursion on
 the type level can be used to introduce recursion on the value level. If
 we define the recursive type:

 data F a = = F { unF :: F a->a }

 then we can “annotate” the definition of y with applications of F and unF
 such that y typechecks. Do it!

 This works on someones else his computer:
 {{{#!hs
 data F a = F { unF :: F a -> a }
 -- y = \f -> (\x -> f (x x)) (\x -> f (x x))
 y = \f -> (\x -> x $ F x) (\x -> f . unF x $ x)
 }}}

 Compiler error:

 ghc.EXE: panic! (the 'impossible' happened)
   (GHC version 8.0.2 for x86_64-unknown-mingw32):
         Simplifier ticks exhausted
   When trying UnfoldingDone x_s1Gq
   To increase the limit, use -fsimpl-tick-factor=N (default 100)
   If you need to do this, let GHC HQ know, and what factor you needed
   To see detailed counts use -ddump-simpl-stats
   Total ticks: 6480

 Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

 Increased -fsimpl-tick-factor to 100.000 still the error occurred

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13377>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list