From 5cdd93311720fd9cee5fa98017c2c9fe937b27bc Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Fri, 6 Dec 2013 18:50:13 -0400 Subject: [PATCH] improve debuggin on failure --- Build/EvilLinker.hs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Build/EvilLinker.hs b/Build/EvilLinker.hs index daa09d148a..db9c84107e 100644 --- a/Build/EvilLinker.hs +++ b/Build/EvilLinker.hs @@ -115,10 +115,13 @@ getOutput cmd params env = do putStrLn $ unwords [cmd, show params] processTranscript' cmd params env Nothing -runParser' :: Parser a -> String -> a -runParser' p s = either failedparse id (parse p "" s) +runParser' :: Parser a -> String -> String -> a +runParser' p s paramfile = either failedparse id (parse p "" s) where - failedparse e = error $ (show e) ++ "\n<<<\n" ++ s ++ "\n>>>" + failedparse e = error $ + (show e) ++ + "\n<<<\n" ++ s ++ "\n>>>" ++ + "\nparam file contained: <<<\n" ++ paramfile ++ "\n>>>" atFile :: FilePath -> String atFile f = '@':f @@ -130,7 +133,7 @@ runAtFile p s f extraparams = do removeFile f return out where - c = runParser' p s + c = runParser' p s (opts c) main = do ghcout <- fst <$> getOutput "cabal"