Account for IfUnpackCo in freeNamesIfDecl
authorSimon Peyton Jones <simonpj@microsoft.com>
Fri, 19 May 2017 11:00:26 +0000 (12:00 +0100)
committerSimon Peyton Jones <simonpj@microsoft.com>
Fri, 19 May 2017 11:23:53 +0000 (12:23 +0100)
commit8fe37a0222517c3af5ffbb793fa738ad7f3eac3d
tree379e939059c2ecddc72481f5009671e4ce4d7863
parentd06cb9633ec887f7575007dec66dec3a5736dbeb
Account for IfUnpackCo in freeNamesIfDecl

We were simply failing to recognise all the free variables of an
IfaceDecl, notably the ones in the coercion of an IfUnpackCo.
Result: the dependency analysis got messed up, so that fingerprint
calculation went wrong.  Trac #13695 showed it up.

A test case is tricky but the fix is a solid one.
compiler/iface/IfaceSyn.hs