
#8848: Warning: Rule too complicated to desugar -------------------------------------+------------------------------------- Reporter: carter | Owner: Type: bug | Status: closed Priority: normal | Milestone: 7.10.1 Component: Compiler | Version: 7.8.1-rc2 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: | simplCore/should_compile/T8848, | T8848a Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by nfrisby): Replying to [comment:12 yongqli]:
It is possible that
{{{ {-# RULE map2 = map2_spec #-} map2_spec :: (a->b->c)-> (Shape Z a )-> Shape Z b -> Shape Z c map2_spec = inline map2 }}}
creates an infinite loop, because we end up with
{{{ map2_spec = inline map2_spec }}} ?
I noticed this happening with GHC 7.10.2. The RULE must not be in- scope/active during the definition of {{{map2_spec}}} (e.g. put it in a downstream module.) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8848#comment:17 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler