-Type definitions
-~~~~~~~~~~~~~~~~
-
-The @Tc...@ datatypes are the ones that apply {\em during} type checking.
-All the types in @Tc...@ things have mutable type-variables in them for
-unification.
-
-At the end of type checking we zonk everything to @Typechecked...@ datatypes,
-which have immutable type variables in them.
-
-\begin{code}
-type TcHsBinds = HsBinds TcId
-type TcMonoBinds = MonoBinds TcId
-type TcDictBinds = TcMonoBinds
-type TcPat = OutPat TcId
-type TcExpr = HsExpr TcId
-type TcGRHSs = GRHSs TcId
-type TcGRHS = GRHS TcId
-type TcMatch = Match TcId
-type TcStmt = Stmt TcId
-type TcArithSeqInfo = ArithSeqInfo TcId
-type TcRecordBinds = HsRecordBinds TcId
-type TcHsModule = HsModule TcId
-type TcForeignDecl = ForeignDecl TcId
-type TcRuleDecl = RuleDecl TcId
-type TcCmd = HsCmd TcId
-type TcCmdTop = HsCmdTop TcId
-
-type TypecheckedPat = OutPat Id
-type TypecheckedMonoBinds = MonoBinds Id
-type TypecheckedDictBinds = TypecheckedMonoBinds
-type TypecheckedHsBinds = HsBinds Id
-type TypecheckedHsExpr = HsExpr Id
-type TypecheckedArithSeqInfo = ArithSeqInfo Id
-type TypecheckedStmt = Stmt Id
-type TypecheckedMatch = Match Id
-type TypecheckedGRHSs = GRHSs Id
-type TypecheckedGRHS = GRHS Id
-type TypecheckedRecordBinds = HsRecordBinds Id
-type TypecheckedHsModule = HsModule Id
-type TypecheckedForeignDecl = ForeignDecl Id
-type TypecheckedRuleDecl = RuleDecl Id
-type TypecheckedCoreBind = (Id, CoreExpr)
-type TypecheckedHsCmd = HsCmd Id
-type TypecheckedHsCmdTop = HsCmdTop Id
-
-type TypecheckedMatchContext = HsMatchContext Name -- Keeps consistency with
- -- HsDo arg StmtContext
-\end{code}
-