diff --git a/ghc/compiler/typecheck/TcClassDcl.lhs b/ghc/compiler/typecheck/TcClassDcl.lhs
index 5e555ff099ceee8afb8626a33c93e7da37759775..66b4d5619e660e07c4eb8ccd2150d03047a6c395 100644
--- a/ghc/compiler/typecheck/TcClassDcl.lhs
+++ b/ghc/compiler/typecheck/TcClassDcl.lhs
@@ -22,7 +22,7 @@ import RnHsSyn		( RenamedClassDecl(..), RenamedClassPragmas(..),
 			  RenamedClassOpSig(..), SYN_IE(RenamedMonoBinds),
 			  RenamedGenPragmas(..), RenamedContext(..), SYN_IE(RenamedHsDecl)
 			)
-import TcHsSyn		( TcIdOcc(..), SYN_IE(TcHsBinds), SYN_IE(TcMonoBinds), SYN_IE(TcExpr),
+import TcHsSyn		( SYN_IE(TcHsBinds), SYN_IE(TcMonoBinds), SYN_IE(TcExpr),
 			  mkHsTyApp, mkHsTyLam, mkHsDictApp, mkHsDictLam, tcIdType )
 
 import Inst		( Inst, InstOrigin(..), SYN_IE(LIE), emptyLIE, plusLIE, newDicts, newMethod )
@@ -33,7 +33,7 @@ import TcKind		( unifyKind, TcKind )
 import TcMonad
 import TcMonoType	( tcHsType, tcContext )
 import TcSimplify	( tcSimplifyAndCheck )
-import TcType		( SYN_IE(TcType), SYN_IE(TcTyVar), tcInstType, tcInstSigTyVars, 
+import TcType		( TcIdOcc(..), SYN_IE(TcType), SYN_IE(TcTyVar), tcInstType, tcInstSigTyVars, 
 			  tcInstSigType, tcInstSigTcType )
 import PragmaInfo	( PragmaInfo(..) )
 
diff --git a/ghc/compiler/typecheck/TcDefaults.lhs b/ghc/compiler/typecheck/TcDefaults.lhs
index 0b9a66b67bf62fc5d8a17798cc9e19910e518928..49f9421afa125956dc46117b1186e04c4e593f75 100644
--- a/ghc/compiler/typecheck/TcDefaults.lhs
+++ b/ghc/compiler/typecheck/TcDefaults.lhs
@@ -14,7 +14,6 @@ import HsSyn		( HsDecl(..), TyDecl, ClassDecl, InstDecl, HsBinds,
 			  DefaultDecl(..), HsType, IfaceSig,
 			  HsExpr, HsLit, ArithSeqInfo, Fake, InPat)
 import RnHsSyn		( RenamedHsDecl(..), RenamedDefaultDecl(..) )
-import TcHsSyn		( TcIdOcc )
 
 import TcMonad
 import Inst		( InstOrigin(..) )
@@ -22,6 +21,7 @@ import TcEnv		( tcLookupClassByKey )
 import SpecEnv		( SpecEnv )
 import TcMonoType	( tcHsType )
 import TcSimplify	( tcSimplifyCheckThetas )
+import TcType		( TcIdOcc )
 
 import TysWiredIn	( intTy, doubleTy, unitTy )
 import Type             ( SYN_IE(Type) )
diff --git a/ghc/compiler/typecheck/TcDeriv.lhs b/ghc/compiler/typecheck/TcDeriv.lhs
index 5a089e1c7d3c5d505f211656096c2e2640eba939..58e25a9efcc42248781829d0bc29c370455f547a 100644
--- a/ghc/compiler/typecheck/TcDeriv.lhs
+++ b/ghc/compiler/typecheck/TcDeriv.lhs
@@ -21,7 +21,6 @@ import HsSyn		( HsDecl, FixityDecl, Fixity, InstDecl,
 import HsPragmas	( InstancePragmas(..) )
 import RdrHsSyn		( RdrName, SYN_IE(RdrNameMonoBinds) )
 import RnHsSyn		( SYN_IE(RenamedHsBinds), SYN_IE(RenamedMonoBinds), SYN_IE(RenamedFixityDecl) )
-import TcHsSyn		( TcIdOcc )
 
 import TcMonad
 import Inst		( SYN_IE(InstanceMapper) )
@@ -31,6 +30,7 @@ import TcKind		( TcKind )
 import TcGenDeriv	-- Deriv stuff
 import TcInstUtil	( InstInfo(..), mkInstanceRelatedIds, buildInstanceEnvs )
 import TcSimplify	( tcSimplifyThetas )
+import TcType		( TcIdOcc )
 
 import RnBinds		( rnMethodBinds, rnTopMonoBinds )
 import RnEnv		( newDfunName, bindLocatedLocalsRn )
diff --git a/ghc/compiler/typecheck/TcEnv.lhs b/ghc/compiler/typecheck/TcEnv.lhs
index 946eb8b8fb7542eb4a6ff3b0b3010851300aceed..2fb27cbd20b2e472acb59bcef2def58becb196f3 100644
--- a/ghc/compiler/typecheck/TcEnv.lhs
+++ b/ghc/compiler/typecheck/TcEnv.lhs
@@ -31,9 +31,9 @@ IMPORT_DELOOPER(TcMLoop)  -- for paranoia checking
 import HsTypes	( HsTyVar(..) )
 import Id	( SYN_IE(Id), GenId, idType, mkUserLocal, mkUserId, replaceIdInfo, getIdInfo )
 import PragmaInfo ( PragmaInfo(..) )
-import TcHsSyn	( SYN_IE(TcIdBndr), TcIdOcc(..) )
 import TcKind	( TcKind, newKindVars, newKindVar, tcDefaultKind, kindToTcKind, Kind )
-import TcType	( SYN_IE(TcType), TcMaybe, SYN_IE(TcTyVar), SYN_IE(TcTyVarSet),
+import TcType	( SYN_IE(TcIdBndr), TcIdOcc(..),
+		  SYN_IE(TcType), TcMaybe, SYN_IE(TcTyVar), SYN_IE(TcTyVarSet),
 		  newTyVarTys, tcInstTyVars, zonkTcTyVars
 		)
 import TyVar	( unionTyVarSets, emptyTyVarSet, tyVarSetToList, SYN_IE(TyVar) )