traceProcess :: String -> [String] -> IO ()
traceProcess exe args = do
  (code, stdout, stderr) <- readProcessWithExitCode exe args ""
  case code of
    ExitFailure _ -> error $ exe ++ " error: " ++ stdout ++ stderr
    _             -> return ()
traceProcess :: String -> [String] -> IO ()
traceProcess exe args = do
  (code, stdout, stderr) <- readProcessWithExitCode exe args ""
  case code of
    ExitFailure _ -> error $ exe ++ " error: " ++ stdout ++ stderr
    _             -> return ()
traceProcess exe args = do
  (code, stdout, stderr) <- readProcessWithExitCode exe args ""
  case code of
    ExitFailure _ -> error $ exe ++ " error: " ++ stdout ++ stderr
    _             -> return ()