X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=Control%2FConcurrent.hs;h=6f183cbccd4e2fd30469d3633f34d3c724836638;hb=8f298c3539c4786f48ae89d8ca754115210106cf;hp=e820d17bdad41f151dae9d3f1dbd3e3447cf1389;hpb=54fa1fd59bf04ce922840a6a55d9704a2cab273e;p=ghc-base.git diff --git a/Control/Concurrent.hs b/Control/Concurrent.hs index e820d17..6f183cb 100644 --- a/Control/Concurrent.hs +++ b/Control/Concurrent.hs @@ -96,7 +96,7 @@ import GHC.Conc ( ThreadId(..), myThreadId, killThread, yield, import GHC.TopHandler ( reportStackOverflow, reportError ) import GHC.IOBase ( IO(..) ) import GHC.IOBase ( unsafeInterleaveIO ) -import GHC.IOBase ( newIORef, readIORef, writeIORef ) +import GHC.IOBase ( newIORef, readIORef, writeIORef ) import GHC.Base import Foreign.StablePtr @@ -230,8 +230,8 @@ real_handler ex = AsyncException ThreadKilled -> return () -- report all others: - AsyncException StackOverflow -> reportStackOverflow False - other -> reportError False other + AsyncException StackOverflow -> reportStackOverflow + other -> reportError other #endif /* __GLASGOW_HASKELL__ */ @@ -506,9 +506,9 @@ runInUnboundThread action = do > forkChild :: IO () -> IO () > forkChild io = do > mvar <- newEmptyMVar -> forkIO (io `finally` putMVar mvar ()) > childs <- takeMVar children > putMVar children (mvar:childs) +> forkIO (io `finally` putMVar mvar ()) > > main = > later waitForChildren $