summaryrefslogtreecommitdiff
path: root/ghc
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2009-09-08 14:09:06 +0000
committerSimon Marlow <marlowsd@gmail.com>2009-09-08 14:09:06 +0000
commit03bb97e0a29fe3f414c17e6b4074f2c9e8e8012e (patch)
tree98ca624dc2735cc48c43fb45b0d085c412ecc464 /ghc
parentb5f2a027f2b951fc0fba2c9bd62bb7d13898030c (diff)
downloadhaskell-03bb97e0a29fe3f414c17e6b4074f2c9e8e8012e.tar.gz
Add -package-id, improve package shadowing behaviour and error messages
A few changes bundled together here: - Add -package-id flag, like -package but takes an InstalledPackageId as an argument (mainly for Cabal) (docs to follow) - Fix the shadowing behaviour: if we end up with two packages with the same name/version that came from different package databases, then one will shadow the other. This may mean we have to disable other packages that depended on the now-shadowed package. Lots of refactoring to ensure that we can get reasonable diagnostics when this happens <command line>: cannot satisfy -package shadowdep: shadowdep-1-XXX is unusable due to missing or recursive dependencies: shadow-1-XXX (use -v for more information)
Diffstat (limited to 'ghc')
-rw-r--r--ghc/InteractiveUI.hs1
1 files changed, 1 insertions, 0 deletions
diff --git a/ghc/InteractiveUI.hs b/ghc/InteractiveUI.hs
index e096fb201f..7d9eaca38b 100644
--- a/ghc/InteractiveUI.hs
+++ b/ghc/InteractiveUI.hs
@@ -1592,6 +1592,7 @@ showPackages = do
where showFlag (ExposePackage p) = text $ " -package " ++ p
showFlag (HidePackage p) = text $ " -hide-package " ++ p
showFlag (IgnorePackage p) = text $ " -ignore-package " ++ p
+ showFlag (ExposePackageId p) = text $ " -package-id " ++ p
showLanguages :: GHCi ()
showLanguages = do