For equalities with incompatible kinds, new IrredCan goes in the inert set, not work...
authorSimon Peyton Jones <simonpj@microsoft.com>
Fri, 21 Mar 2014 15:32:58 +0000 (15:32 +0000)
committerSimon Peyton Jones <simonpj@microsoft.com>
Mon, 24 Mar 2014 08:28:01 +0000 (08:28 +0000)
commitc89c57e3b72a8f3de9f35e1bd6e0f70d2b18a941
treeb210479f3b2d8cf86bd1c220c1764dda5024c184
parent5a51b6969132b7c31da21c24a063a993b98b51ed
For equalities with incompatible kinds, new IrredCan goes in the inert set, not work list

This change makes the code for canIrred markedly simpler (and more efficient)
See Note [Equalities with incompatible kinds].

I don't think there was really a bug here, but I came across it when
fixing Trac #8913
compiler/typecheck/TcCanonical.lhs