Remove same-package import lists, fixes #2835.
Instead of qualifying, in some cases I just added an extra
'hiding' pragma to squelch errors. Common conflicts
(just grep for hiding):
- Flag
- Distribution.Simple.Compiler
- Distribution.PackageDescription
- Distribution.Simple.Setup
- installedComponentId
- Distribution.Package
- Distribution.InstalledPackageInfo
- doesFileExist
- Distribution.PackageDescription.Check
- instantiatedWith
- I renamed the field in InstalledPackageInfo. But
it's probably going away with Backpack bits; I
migth just excise it soon.
- absoluteInstallDirs and substPathTemplate
- Distribution.Simple.InstallDirs
- Distribution.Simple.LocalBuildInfo
I fixed some shadowing errors by renaming local variables in some cases.
Common shadowings (we should perhaps consider not using these as
method/field names):
- freeVars
- components
- noVersion
- verbosity
- get
- description
- name
Some data structures were moved around (IPIConvert and ABIHash)
to make it easier to handle import lists.
Some functions in Utils could be turned into reexports of standard
library functions.
No explicit imports were removed from non-Cabal imports. These
imports help maintain warning cleanliness across versions of GHC,
so I don't recommend removing them.
Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu>