Note [Don't w/w inline things (a)]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
It's very important to refrain from w/w-ing an INLINE function
-because the wrapepr will then overwrite the InlineRule unfolding.
+because the wrapper will then overwrite the InlineRule unfolding.
It was wrong with the old InlineMe Note too: if we do so by mistake
we transform
| otherwise = thing_inside
where
unfolding = idUnfolding fn_id
- inline_rule = mkInlineRule InlUnSat rhs (unfoldingArity unfolding)
+ inline_rule = mkInlineRule unSaturatedOk rhs (unfoldingArity unfolding)
---------------------
splitFun :: Id -> IdInfo -> [Demand] -> DmdResult -> Activation -> Expr Var