diff options
| author | simonpj <unknown> | 2001-03-08 12:07:43 +0000 |
|---|---|---|
| committer | simonpj <unknown> | 2001-03-08 12:07:43 +0000 |
| commit | 51a571c0f5b0201ea53bec60fcaafb78c01c017e (patch) | |
| tree | 863679c641b8bc44aa08c145389a3d85520763a9 /ghc/compiler/compMan/CompManager.lhs | |
| parent | d78151f68bdaf05cb1e8ab77e32529327c0dae36 (diff) | |
| download | haskell-51a571c0f5b0201ea53bec60fcaafb78c01c017e.tar.gz | |
[project @ 2001-03-08 12:07:38 by simonpj]
--------------------
A major hygiene pass
--------------------
1. The main change here is to
Move what was the "IdFlavour" out of IdInfo,
and into the varDetails field of a Var
It was a mess before, because the flavour was a permanent attribute
of an Id, whereas the rest of the IdInfo was ephemeral. It's
all much tidier now.
Main places to look:
Var.lhs Defn of VarDetails
IdInfo.lhs Defn of GlobalIdDetails
The main remaining infelicity is that SpecPragmaIds are right down
in Var.lhs, which seems unduly built-in for such an ephemeral thing.
But that is no worse than before.
2. Tidy up the HscMain story a little. Move mkModDetails from MkIface
into CoreTidy (where it belongs more nicely)
This was partly forced by (1) above, because I didn't want to make
DictFun Ids into a separate kind of Id (which is how it was before).
Not having them separate means we have to keep a list of them right
through, rather than pull them out of the bindings at the end.
3. Add NameEnv as a separate module (to join NameSet).
4. Remove unnecessary {-# SOURCE #-} imports from FieldLabel.
Diffstat (limited to 'ghc/compiler/compMan/CompManager.lhs')
| -rw-r--r-- | ghc/compiler/compMan/CompManager.lhs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/ghc/compiler/compMan/CompManager.lhs b/ghc/compiler/compMan/CompManager.lhs index bae0a213cd..f2ba82a76f 100644 --- a/ghc/compiler/compMan/CompManager.lhs +++ b/ghc/compiler/compMan/CompManager.lhs @@ -37,8 +37,8 @@ import CmTypes import HscTypes import RnEnv ( unQualInScope ) import Id ( idType, idName ) -import Name ( Name, lookupNameEnv, extendNameEnvList, - NamedThing(..) ) +import Name ( Name, NamedThing(..) ) +import NameEnv import RdrName ( emptyRdrEnv ) import Module ( Module, ModuleName, moduleName, isHomeModule, mkModuleName, moduleNameUserString, moduleUserString ) |
