
#10528: compile time performance regression with OverloadedStrings and Text -------------------------------------+------------------------------------- Reporter: jakewheat | Owner: Type: bug | Status: merge Priority: high | Milestone: 7.10.3 Component: Compiler | Version: 7.10.2-rc2 Resolution: | Keywords: Operating System: Linux | Architecture: Type of failure: Compile-time | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by simonpj): Replying to [comment:34 afarmer]:
I realize I could be careful about assigning phases to the inline pragma on `baz` and both rules, but that seems extremely fiddly compared to just not inlining/rewriting the RHS to begin with.
It may be fiddly but you absolutely must do it. In the rewrite sequence
you give, the inlining for `baz` is active, so GHC could perfectly well
rewrite
{{{
bar (baz (quux z)) ---> bar (