[GHC] #16296: OccurAnal should not break the linter assumptions
GHC
ghc-devs at haskell.org
Mon Feb 25 09:25:06 UTC 2019
#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>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list