Fix rank-validity testing
authorsimonpj@microsoft.com <unknown>
Tue, 18 Apr 2006 12:53:50 +0000 (12:53 +0000)
committersimonpj@microsoft.com <unknown>
Tue, 18 Apr 2006 12:53:50 +0000 (12:53 +0000)
commit156fb5686ba6d7e121e0b876ff212268ebae444a
tree91c4870e05c65c050b3edd3d11f61cc0fc2596d8
parent2c1ea2cedb1a8034b0828e24b554a35f56bb8924
Fix rank-validity testing

GHC does not now do "hoisting" as it used to.  Instead, it allows
foralls to the right of fuction arrows, as well as to the left.

But the type-validity tester hadn't caught up.  This commit fixes
it. The test is tc203.

Incidentally, GHC still doesn't let you write
forall a. Eq a => forall b. b -> b
because we get a zillion reduce/reduce errors if we allow that.  I'm
sure it's fixable.  But meanwhile you have to use an auxiliary type
synonym, which is a bit stupid.
compiler/typecheck/TcMType.lhs