
#10657: Regression T2497 WAY=optasm: Simplifier ticks exhausted -------------------------------------+------------------------------------- Reporter: thomie | Owner: Type: bug | Status: new Priority: high | Milestone: 7.12.1 Component: Compiler | Version: 7.11 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: typecheck/should_compile/T2497 | Blocking: | Related Tickets: Differential Revisions: | -------------------------------------+------------------------------------- {{{ $ make TEST=T2497 WAY=optasm EXTRA_HC_OPTS=-fsimpl-tick-factor=10000 TEST_HC=ghc-7.11.20150711 ... T2497.hs:18:1: warning: Defined but not used: ‘beq’ ghc: panic! (the 'impossible' happened) (GHC version 7.11.20150711 for x86_64-unknown-linux): Simplifier ticks exhausted When trying RuleFired rule 1 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: 40000 ... }}} The test is very small: {{{ module ShouldCompile() where eq :: Eq a => a -> a -> Bool eq = (==) {-# RULES "rule 1" forall x y. x == y = y `eq` x #-} }}} The problem does not occur with ghc-7.10.1. Curiously the problem goes away when I change the module header to `module ShouldCompile where`. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10657 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler