- spec_pr | inline_rhs = (spec_f_w_arity `setInlineActivation` inline_act, Note InlineMe spec_rhs)
- | otherwise = (spec_f_w_arity, spec_rhs)
-
- ; return (Just (spec_pr, final_uds, spec_env_rule)) } }
+ -- See Note [Inline specialisations]
+ final_spec_f | Just sat <- fn_has_inline_rule
+ = spec_f_w_arity `setInlineActivation` inline_act
+ `setIdUnfolding` mkInlineRule sat spec_rhs spec_arity
+ -- I'm not sure this should be unconditionally InlSat
+ | otherwise
+ = spec_f_w_arity
+ ; return (Just ((final_spec_f, spec_rhs), final_uds, spec_env_rule)) } }