projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Improve fix to Trac #3007
[ghc-hetmet.git]
/
compiler
/
iface
/
IfaceEnv.lhs
diff --git
a/compiler/iface/IfaceEnv.lhs
b/compiler/iface/IfaceEnv.lhs
index
e09ff41
..
05c6289
100644
(file)
--- a/
compiler/iface/IfaceEnv.lhs
+++ b/
compiler/iface/IfaceEnv.lhs
@@
-7,7
+7,7
@@
module IfaceEnv (
lookupOrig, lookupOrigNameCache, extendNameCache,
newIfaceName, newIfaceNames,
extendIfaceIdEnv, extendIfaceTyVarEnv,
lookupOrig, lookupOrigNameCache, extendNameCache,
newIfaceName, newIfaceNames,
extendIfaceIdEnv, extendIfaceTyVarEnv,
- tcIfaceLclId, tcIfaceTyVar,
+ tcIfaceLclId, tcIfaceTyVar, lookupIfaceTyVar,
tcIfaceTick,
ifaceExportNames,
tcIfaceTick,
ifaceExportNames,
@@
-26,7
+26,6
@@
import TyCon
import DataCon
import Var
import Name
import DataCon
import Var
import Name
-import OccName
import PrelNames
import Module
import LazyUniqFM
import PrelNames
import Module
import LazyUniqFM
@@
-282,6
+281,11
@@
tcIfaceTyVar occ
Nothing -> failIfM (text "Iface type variable out of scope: " <+> ppr occ)
}
Nothing -> failIfM (text "Iface type variable out of scope: " <+> ppr occ)
}
+lookupIfaceTyVar :: FastString -> IfL (Maybe TyVar)
+lookupIfaceTyVar occ
+ = do { lcl <- getLclEnv
+ ; return (lookupUFM (if_tv_env lcl) occ) }
+
extendIfaceTyVarEnv :: [TyVar] -> IfL a -> IfL a
extendIfaceTyVarEnv tyvars thing_inside
= do { env <- getLclEnv
extendIfaceTyVarEnv :: [TyVar] -> IfL a -> IfL a
extendIfaceTyVarEnv tyvars thing_inside
= do { env <- getLclEnv