David

Thanks for moving my early-inline patch series to HEAD.

You’ll remember that I pushed this patch (below) to spj-early-inline2

Can you be sure to cherry-pick this one too?  It’s important and I don’t see it in HEAD yet.  I’m surprised that there isn’t a validate failure (T9505 if memory serves – see attached).

Simon

 

commit 002192aa8df463ae945e8a94147cfc1d848f43a5

Author: Simon Peyton Jones <simonpj@microsoft.com>

Date:   Fri Feb 24 16:55:36 2017 +0000

 

    Fix a nasty bug in CoreSubst.collectBindersPushingCo

   

    The bug wsa in the use of (mkNthCo 0) to get the argument

    part of a function coercion.  Not so! Now (->) takes four

    arguments so that 0 should have been 2.

   

    Enough with magic numbers. I defined decomposeFunCo, and used

    it throughout.  Much nicer now; and correct.

   

    The nete effect, incidentally, was that T9509 was failing to

    specialise.  (And that was the initial reason for introducing

    collectBindersPushingCo in the first place.)