[project @ 2002-01-30 16:37:14 by simonmar]
authorsimonmar <unknown>
Wed, 30 Jan 2002 16:37:18 +0000 (16:37 +0000)
committersimonmar <unknown>
Wed, 30 Jan 2002 16:37:18 +0000 (16:37 +0000)
commit4aed87eb62c9cf8645dcb7feb32892bb0f09f5f3
treea2586b2dc08573b9a27a1367d6ba0e888f473216
parent1e046f78fc981ab536a6532c2815a8f81820650d
[project @ 2002-01-30 16:37:14 by simonmar]
Simplify the package story inside the compiler.  The new story is
this:

  The Finder no longer determines a module's package based on its
  filesystem location.  The filesystem location indicates only whether
  a given module is in the current package or not (i.e. found along
  the -i path ==> current package, found along the package path ==>
  other package).

  Hence a Module no longer contains a package name.  Instead it just
  contains PackageInfo, which is either ThisPackage or AnotherPackage.
  The compiler uses this information for generating cross-DLL calls
  and omitting certain version information from .hi files.

  The interface still contains the package name.  This isn't used for
  anything right now, but in the future (when we have hierarchical
  libraries) we might use it to automatically determine which packages
  a binary should be linked against.  When building a package, you
  should still use -package-name, but it won't be fatal if you don't.

The warning/error about package name mismatches has gone away.
ghc/compiler/basicTypes/Module.lhs
ghc/compiler/main/Finder.lhs
ghc/compiler/main/HscMain.lhs
ghc/compiler/main/HscTypes.lhs
ghc/compiler/main/MkIface.lhs
ghc/compiler/rename/ParseIface.y
ghc/compiler/rename/Rename.lhs
ghc/compiler/rename/RnHiFiles.lhs
ghc/compiler/rename/RnMonad.lhs