Transfer strictness and arity info when abstracting over type variables
authorsimonpj@microsoft.com <unknown>
Fri, 11 Apr 2008 14:24:18 +0000 (14:24 +0000)
committersimonpj@microsoft.com <unknown>
Fri, 11 Apr 2008 14:24:18 +0000 (14:24 +0000)
commit27061b5b4008a831eba4784358b040bb1250dcef
treeb30c39942265ecfe09d57cc1e3f293747e9d17e9
parent420a27dc9fb7de5fc6c96fe078ddd4dc87222d44
Transfer strictness and arity info when abstracting over type variables

See Note [transferPolyIdInfo] in Id.lhs, and test
eyeball/demand-on-polymorphic-floatouts.hs

Max Bolingbroke discovered that we were gratuitiously losing strictness
info.  This simple patch fixes it.  But see the above note for things
that are still discarded: worker info and rules.
compiler/basicTypes/Id.lhs
compiler/simplCore/SetLevels.lhs
compiler/simplCore/SimplUtils.lhs