Note [Coercion arguments]

GHC/Core/Rules.hs:1049 compiler

What if we have (f (Coercion co)) in the template, where the 'co' is a coercion
argument to f?  Right now we have nothing in place to ensure that a
coercion /argument/ in the template is a variable.  We really should,
perhaps by abstracting over that variable.

C.f. the treatment of dictionaries in GHC.HsToCore.Binds.decompseRuleLhs.

For now, though, we simply behave badly, by failing in match_co.
We really should never rely on matching the structure of a coercion
(which is just a proof).

References 0

This Note does not link to any other.

Referenced by 2