Remove the incredibly hairy splitTelescopeTvs.
authorRichard Eisenberg <eir@cis.upenn.edu>
Tue, 26 Apr 2016 14:50:33 +0000 (10:50 -0400)
committerBen Gamari <ben@smart-cactus.org>
Tue, 23 Aug 2016 21:03:18 +0000 (17:03 -0400)
commitced7cc010785df5968d15b24703d8f01328a82ba
tree48770f3a51253d7279ae846b9078b99a0db5fd30
parent6a4326ec1dc86122a731a30697b02a1cfa1a52fb
Remove the incredibly hairy splitTelescopeTvs.

This patch removes splitTelescopeTvs by adding information about
scoped type variables to TcTyCon. Vast simplification!

This also fixes #11821 by bringing only unzonked vars into scope.

Test case: polykinds/T11821

(cherry picked from commit c5919f75afab9dd6f0a4a2670402024cece5da57)
compiler/typecheck/TcHsType.hs
compiler/typecheck/TcMType.hs
compiler/typecheck/TcTyClsDecls.hs
compiler/typecheck/TcValidity.hs
compiler/types/TyCon.hs
testsuite/tests/ghci/scripts/T7873.stderr
testsuite/tests/polykinds/T11821.hs [new file with mode: 0644]
testsuite/tests/polykinds/all.T