[GHC] #11731: Simplifier: Inlining trivial let can lose sharing

GHC ghc-devs at haskell.org
Tue Mar 22 09:19:59 UTC 2016


#11731: Simplifier: Inlining trivial let can lose sharing
-------------------------------------+-------------------------------------
        Reporter:  nomeata           |                Owner:
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.1
      Resolution:                    |             Keywords:
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 nomeata):

 I’ve created a test case for this; if you run `T11731`, it will print
 `Evaluated` twice.

 > Would you like to try that? I think it'd fix this bug.

 I’m not sure I like that path. This means that the strictness signatures
 will now not only ''describe'' the actual semantics of the code, but
 rather ''affect'' it. We would lose the invariant that the semantics of
 the program does not change if we remove all strictness signatures. Feels
 wrong to me.

 But nevertheless, I see if that indeed fixes the problem.

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


More information about the ghc-tickets mailing list