[GHC] #10527: Panic Simplifier ticks exhausted with type families

GHC ghc-devs at haskell.org
Thu Jun 25 17:44:00 UTC 2015


#10527: Panic Simplifier ticks exhausted with type families
-------------------------------------+-------------------------------------
        Reporter:  sopvop            |                   Owner:  bgamari
            Type:  bug               |                  Status:  new
        Priority:  highest           |               Milestone:  7.10.2
       Component:  Compiler          |                 Version:  7.10.1-rc1
      Resolution:                    |                Keywords:
Operating System:  Unknown/Multiple  |            Architecture:
 Type of failure:  None/Unknown      |  Unknown/Multiple
      Blocked By:                    |               Test Case:
 Related Tickets:                    |                Blocking:
                                     |  Differential Revisions:
-------------------------------------+-------------------------------------

Comment (by bgamari):

 I have also noticed that GHC 7.10.1 often appears to by simplifying inside
 of a `cast` when 7.10.2 is just working inside of `Const`. For instance,
 it is common to see the `SimplCont` of 7.10.1 terminates with,

 {{{#!hs
 CastIt Nth:1
          (((forall a6 b.
             <Control.Applicative.Const a6 b>_R
             -> Control.Applicative.NTCo:Const[0] <a6>_R <b>_P)@"field1"
                                                                Bug.:->
 Bug.Expr
 GHC.Types.Int)@Bug.Rec
 '["field1"
 Bug.:-> Bug.Expr
 GHC.Types.Int,
 "field2"
 Bug.:-> Bug.Expr
 GHC.Types.Int,
 "id"
 Bug.:-> Bug.Expr
 GHC.Types.Int,
 "event_type"
 Bug.:-> Bug.Expr
 GHC.Types.Int])
 Stop[BoringCtxt] "field1" Bug.:-> Bug.Expr GHC.Types.Int
 }}}

 whereas 7.10.2 will end in,

 {{{#!hs
 Stop[BoringCtxt] Control.Applicative.Const
                    ("field1" Bug.:-> Bug.Expr GHC.Types.Int)
                    (Bug.Rec
                       '["field1" Bug.:-> Bug.Expr GHC.Types.Int,
                         "field2" Bug.:-> Bug.Expr GHC.Types.Int,
                         "id" Bug.:-> Bug.Expr GHC.Types.Int,
                         "event_type" Bug.:-> Bug.Expr GHC.Types.Int])
 }}}

 with the inner context being essentially identical.

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


More information about the ghc-tickets mailing list