projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[project @ 2001-04-14 22:32:14 by qrczak]
[ghc-hetmet.git]
/
ghc
/
compiler
/
rename
/
RnMonad.lhs
diff --git
a/ghc/compiler/rename/RnMonad.lhs
b/ghc/compiler/rename/RnMonad.lhs
index
9f3bb3e
..
71db387
100644
(file)
--- a/
ghc/compiler/rename/RnMonad.lhs
+++ b/
ghc/compiler/rename/RnMonad.lhs
@@
-58,7
+58,7
@@
import Name ( Name, OccName, NamedThing(..),
nameOccName,
decode, mkLocalName, mkKnownKeyGlobal
)
nameOccName,
decode, mkLocalName, mkKnownKeyGlobal
)
-import Name ( NameEnv, lookupNameEnv, emptyNameEnv, unitNameEnv, extendNameEnvList )
+import NameEnv ( NameEnv, lookupNameEnv, emptyNameEnv, extendNameEnvList )
import Module ( Module, ModuleName, ModuleSet, emptyModuleSet )
import NameSet
import CmdLineOpts ( DynFlags, DynFlag(..), dopt )
import Module ( Module, ModuleName, ModuleSet, emptyModuleSet )
import NameSet
import CmdLineOpts ( DynFlags, DynFlag(..), dopt )
@@
-276,6
+276,12
@@
data Ifaces = Ifaces {
iSlurp :: NameSet,
-- All the names (whether "big" or "small", whether wired-in or not,
-- whether locally defined or not) that have been slurped in so far.
iSlurp :: NameSet,
-- All the names (whether "big" or "small", whether wired-in or not,
-- whether locally defined or not) that have been slurped in so far.
+ --
+ -- It's used for two things:
+ -- a) To record what we've already slurped, so
+ -- we can no-op if we try to slurp it again
+ -- b) As the 'gates' for importing rules. We import a rule
+ -- if all its LHS free vars have been slurped
iVSlurp :: (ModuleSet, NameSet)
-- The Names are all the (a) non-wired-in
iVSlurp :: (ModuleSet, NameSet)
-- The Names are all the (a) non-wired-in