
#9291: Don't reconstruct sum types if the type subtly changes -------------------------------------+------------------------------------- Reporter: schyler | Owner: Type: feature request | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.8.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by nomeata): Uh. Good point. I guess we’d need a linear type system to prevent your illegal double-use of `eta_B1` here :-) (It is not really “case-of-case” that you are doing there, but your point still holds.) Note that this would be an illegal transformation not only for `writeMutVar#` but for anything that is not provabley total, even a pure but non-terminating function. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9291#comment:38 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler