Re: #16296: OccurAnal should not break the linter assumptions

"GHC" <[email protected]>
Newsgroups gmane.comp.lang.haskell.glasgow.bugs
Message-ID <[email protected]>
#16296: OccurAnal should not break the linter assumptions
-------------------------------------+-------------------------------------
        Reporter:  aspiwack          |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.6.3
      Resolution:                    |             Keywords:  Simplifier
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by simonpj):

 I wrote a quick fix, which has now landed as
 https://gitlab.haskell.org/ghc/ghc/commit/0eb7cf03da3783ca887d5de44d312cf6f3a4113c]

 But it's not the Right Solution; it's messy, and it loses some useful
 optimisations, namely
 {{{
 case Imported.x of
   True -> .....(case Imported.x of { True -> e1; False -> e2 })......
   False -> ...
 }}}
 We'd like the inner case to disappear, but now it won't.

 I think the right solution is as outlined in the Description.

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16296#comment:2>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.