nullIdEnv, addOneToIdEnv, growIdEnvList,
unionManyIdSets, minusIdSet, mkIdSet,
idSetToList,
- lookupIdEnv, IdEnv(..)
+ lookupIdEnv, SYN_IE(IdEnv)
)
import Pretty ( ppStr, ppBesides, ppChar, ppInt )
import SrcLoc ( mkUnknownSrcLoc )
import TyVar ( nullTyVarEnv, addOneToTyVarEnv,
growTyVarEnvList, lookupTyVarEnv,
tyVarSetToList,
- TyVarEnv(..),
+ SYN_IE(TyVarEnv),
unionManyTyVarSets
)
import UniqSupply ( thenUs, returnUs, mapUs, mapAndUnzipUs,
- mapAndUnzip3Us, getUnique, UniqSM(..)
+ mapAndUnzip3Us, getUnique, SYN_IE(UniqSM),
+ UniqSupply
)
-import Usage ( UVar(..) )
+import Usage ( SYN_IE(UVar) )
import Util ( mapAccumL, zipWithEqual, zipEqual, panic, assertPanic )
isLeakFreeType x y = False -- safe option; ToDo
-- any harm, and not floating it may pin something important. For
-- example
--
--- x = let v = Nil
+-- x = let v = []
-- w = 1:v
-- in ...
--