[project @ 2005-03-01 21:40:40 by simonpj]
Type signatures and skolem constants (again)
Merge to STABLE
This commit lays to rest the vexed question of skolem constants
and type signatures. My fix last week made type-signature variables
into ordinary meta type variables, because they can be unified
together (see Note [Signature skolems] in TcType). But that was wrong
becuase GADTs will only refine skolems.
So this commit extends TcTyVarDetails with a new constructors, SigSkolTv,
which is a skolem (like SkolemTv) but is unifiable (like MetaTv). It's
a bit of a hack, but the code came out quite nicely.
Now the GADT tests work.