Commit d6684fe7 authored by simonmar's avatar simonmar

[project @ 2000-12-12 12:10:08 by simonmar]

Treat an unhandled exception in the same way as a panic (i.e. the
`impossible' happened), to make it clear that these really are
compiler bugs.
parent a816e8cb
-----------------------------------------------------------------------------
-- $Id: DriverUtil.hs,v 1.13 2000/12/11 14:42:21 sewardj Exp $
-- $Id: DriverUtil.hs,v 1.14 2000/12/12 12:10:08 simonmar Exp $
--
-- Utils for the driver
--
......@@ -118,6 +118,9 @@ later = flip finally
handleDyn :: Typeable ex => (ex -> IO a) -> IO a -> IO a
handleDyn = flip catchDyn
handle :: (Exception -> IO a) -> IO a -> IO a
handle = flip Exception.catchAllIO
split :: Char -> String -> [String]
split c s = case rest of
[] -> [chunk]
......
{-# OPTIONS -fno-warn-incomplete-patterns #-}
-----------------------------------------------------------------------------
-- $Id: Main.hs,v 1.36 2000/12/11 16:42:26 sewardj Exp $
-- $Id: Main.hs,v 1.37 2000/12/12 12:10:08 simonmar Exp $
--
-- GHC Driver program
--
......@@ -91,6 +91,9 @@ import Maybe
-- Main loop
main =
-- top-level exception handler: any unrecognised exception is a compiler bug.
handle (\exception -> panic (show exception)) $ do
-- all error messages are propagated as exceptions
handleDyn (\dyn -> case dyn of
PhaseFailed _phase code -> exitWith code
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment