simonpj     2002/10/24 07:17:53 PDT

  Modified files:
    ghc/compiler/basicTypes Module.lhs Name.lhs 
    ghc/compiler/deSugar Desugar.lhs DsMeta.hs 
    ghc/compiler/hsSyn   HsDecls.lhs 
    ghc/compiler/ilxGen  IlxGen.lhs 
    ghc/compiler/main    BinIface.hs DriverPipeline.hs 
                         DriverState.hs HscMain.lhs HscTypes.lhs 
                         MkIface.lhs Packages.lhs TidyPgm.lhs 
    ghc/compiler/parser  Parser.y 
    ghc/compiler/prelude PrelNames.lhs TysWiredIn.lhs 
    ghc/compiler/rename  RnEnv.lhs RnHiFiles.lhs RnIfaces.lhs 
                         RnNames.lhs 
    ghc/compiler/typecheck TcRnDriver.lhs TcRnMonad.lhs 
                           TcRnTypes.lhs 
  Log:
        ------------------------------------------
        1. New try and module and package dependencies
        2. OrigNameCache always contains final info
        ------------------------------------------
  
  These things nearly complete sorting out the incremental
  linking problem that started us off!
  
  1. This commit separates two kinds of information:
  
    (a) HscTypes.Dependencies:
        What (i)  home-package modules, and
             (ii) other packages
        this module depends on, transitively.
  
        That is, to link the module, it should be enough
        to link the dependent modules and packages (plus
        any C stubs etc).
  
        Along with this info we record whether the dependent module
        is (a) a boot interface or (b) an orphan module.  So in
        fact (i) can contain non-home-package modules, namely the
        orphan ones in other packages (sigh).
  
    (b) HscTypes.Usage:
        What version of imported things were used to
        actually compile the module.  This info is used for
        recompilation control only.
  
  2. The Finder now returns a correct Module (incl package indicator)
  first time, so we can install the absolutely final Name in the
  OrigNameCache when we first come across an occurrence of that name,
  even if it's only an occurrence in an unfolding in some other interface
  file.  This is much tidier.
  
  As a result Module.lhs is much cleaner
        No DunnoYet
        No mkVanillaModule
  ALl very joyful stuff.
  
  Revision  Changes    Path
  1.54      +15 -29    fptools/ghc/compiler/basicTypes/Module.lhs
  1.101     +4 -4      fptools/ghc/compiler/basicTypes/Name.lhs
  1.56      +3 -1      fptools/ghc/compiler/deSugar/Desugar.lhs
  1.10      +97 -82    fptools/ghc/compiler/deSugar/DsMeta.hs
  1.95      +4 -1      fptools/ghc/compiler/hsSyn/HsDecls.lhs
  1.29      +8 -8      fptools/ghc/compiler/ilxGen/IlxGen.lhs
  1.11      +24 -32    fptools/ghc/compiler/main/BinIface.hs
  1.141     +2 -2      fptools/ghc/compiler/main/DriverPipeline.hs
  1.84      +3 -3      fptools/ghc/compiler/main/DriverState.hs
  1.169     +8 -8      fptools/ghc/compiler/main/HscMain.lhs
  1.99      +48 -54    fptools/ghc/compiler/main/HscTypes.lhs
  1.162     +104 -131  fptools/ghc/compiler/main/MkIface.lhs
  1.11      +4 -3      fptools/ghc/compiler/main/Packages.lhs
  1.6       +8 -10     fptools/ghc/compiler/main/TidyPgm.lhs
  1.112     +2 -1      fptools/ghc/compiler/parser/Parser.y
  1.66      +21 -29    fptools/ghc/compiler/prelude/PrelNames.lhs
  1.84      +3 -3      fptools/ghc/compiler/prelude/TysWiredIn.lhs
  1.156     +101 -85   fptools/ghc/compiler/rename/RnEnv.lhs
  1.73      +36 -87    fptools/ghc/compiler/rename/RnHiFiles.lhs
  1.156     +27 -32    fptools/ghc/compiler/rename/RnIfaces.lhs
  1.139     +89 -34    fptools/ghc/compiler/rename/RnNames.lhs
  1.11      +8 -5      fptools/ghc/compiler/typecheck/TcRnDriver.lhs
  1.8       +8 -6      fptools/ghc/compiler/typecheck/TcRnMonad.lhs
  1.11      +63 -61    fptools/ghc/compiler/typecheck/TcRnTypes.lhs
_______________________________________________
Cvs-ghc mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-ghc


Reply via email to