[project @ 2001-12-07 17:33:26 by simonpj]
authorsimonpj <unknown>
Fri, 7 Dec 2001 17:33:26 +0000 (17:33 +0000)
committersimonpj <unknown>
Fri, 7 Dec 2001 17:33:26 +0000 (17:33 +0000)
commit8cc5cc279a702f8a5abd0f3a7d833923573a785b
tree4f4bda51b79d44637fa4b3aeeaa05f444d9e3421
parentf50db2a99e5b026215bb14d832ce256119fe51b1
[project @ 2001-12-07 17:33:26 by simonpj]
----------------------------
More jiggling in the renamer
----------------------------

I was a little hasty before.  (Thanks Sigbjorn for finding
this.)  This commit tidies up the handling of AvailEnvs.
Principally:

  * filterImports now deals completely with hiding
    (before it handed off part of the job to mkGlobalRdrEnv)

  * The AvailEnv in an ExportAvails does not have class ops and
    data constructors in its domain.  This makes plusExportAvails
    more efficient, but the main thing is that it collects things
    up right.  (Previously, if we had
import M( C )
import M( op )
    then we got an AvailEnv which had C |-> AvailTC C [C]
    (no 'op').

  * In Rename, we do need a "filled-out" version of the overall
    AvailEnv, full_avail_env, which we construct on the spot in 'rename'.
ghc/compiler/rename/Rename.lhs
ghc/compiler/rename/RnEnv.lhs
ghc/compiler/rename/RnMonad.lhs
ghc/compiler/rename/RnNames.lhs