X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=utils%2Fghc-pkg%2FMain.hs;h=0f0b9ec0540ce2b499949dc13f96a56a4f259597;hb=09d76f81a7b77139901a73f9f241d26a5bdd3796;hp=bb80e6316363d9bffad8b8ae9379e090dedf800a;hpb=fd5d8c682af7058a6cab4f5e1ee0728321c45d17;p=ghc-hetmet.git diff --git a/utils/ghc-pkg/Main.hs b/utils/ghc-pkg/Main.hs index bb80e63..0f0b9ec 100644 --- a/utils/ghc-pkg/Main.hs +++ b/utils/ghc-pkg/Main.hs @@ -635,7 +635,7 @@ doDump = mapM_ putStrLn . intersperse "---" . map showInstalledPackageInfo findPackages :: PackageDBStack -> PackageArg -> IO [InstalledPackageInfo] findPackages db_stack pkgarg = case [ p | p <- all_pkgs, pkgarg `matchesPkg` p ] of - [] -> die ("cannot find package " ++ pkg_msg pkgarg) + [] -> dieWith 2 ("cannot find package " ++ pkg_msg pkgarg) ps -> return ps where all_pkgs = allPackagesInStack db_stack @@ -1026,11 +1026,14 @@ bye :: String -> IO a bye s = putStr s >> exitWith ExitSuccess die :: String -> IO a -die s = do +die = dieWith 1 + +dieWith :: Int -> String -> IO a +dieWith ec s = do hFlush stdout prog <- getProgramName hPutStrLn stderr (prog ++ ": " ++ s) - exitWith (ExitFailure 1) + exitWith (ExitFailure ec) dieOrForceAll :: Force -> String -> IO () dieOrForceAll ForceAll s = ignoreError s