follow Control.Exception changes
authorSimon Marlow <marlowsd@gmail.com>
Fri, 26 Sep 2008 23:51:20 +0000 (23:51 +0000)
committerSimon Marlow <marlowsd@gmail.com>
Fri, 26 Sep 2008 23:51:20 +0000 (23:51 +0000)
tests/all.T
tests/conc046.hs
tests/conc047.hs
tests/conc048.hs
tests/conc052.hs
tests/conc060.hs
tests/conc060.stdout
tests/conc061.hs
tests/conc061.stdout
tests/conc062.hs

index 290f7d9..830bfb5 100644 (file)
@@ -26,7 +26,7 @@ test('conc053', compose(only_ways(['threaded1','threaded2']),
 test('conc054', normal, compile_and_run, ['-package stm'])
 test('conc055', exit_code(1), compile_and_run, ['-package stm'])
 test('conc056', only_ways(['threaded1','threaded2']),
-                compile_and_run, ['-package stm -package network'])
+                compile_and_run, ['-package stm'])
 
 test('conc060', normal, compile_and_run, ['-package stm'])
 test('conc061', normal, compile_and_run, ['-package stm'])
index 1cff81f..78217da 100644 (file)
@@ -1,3 +1,4 @@
+{-# LANGUAGE PatternSignatures #-}
 module Main where
 
 import GHC.Conc
@@ -16,11 +17,11 @@ stmops v1 v2 = do s1 <- readTVar v1
 
 stmupdates :: TVar String -> TVar String -> STM ()
 stmupdates v1 v2 = do writeTVar v1 "About to throw exception"
-                      throwDyn "Exn holding string"
+                      throw (ErrorCall "Exn holding string")
 
 internalexn :: TVar String -> TVar String -> STM ()
 internalexn v1 v2 = catchSTM ( do writeTVar v1 "About to throw exception"
-                                  throwDyn "Exn holding string" )
+                                  throw (ErrorCall "Exn holding string" ))
                              (\_ -> writeTVar v1 "Reached handler ")
 
 internalexn2 :: TVar String -> TVar String -> STM ()
@@ -37,7 +38,7 @@ main = do putStr "Before\n"
 
           putStr "Abandoning update with exception\n"
          Control.Exception.catch (atomically ( stmupdates sv1 sv2 )) 
-                     (\_ -> putStr "Abandoned\n")
+                     (\(e::ErrorCall) -> putStr "Abandoned\n")
 
           putStr "Reading from svars:            "
          x <- atomically ( stmops sv1 sv2 )
index 3c1e232..62e68b2 100644 (file)
@@ -1,3 +1,4 @@
+{-# LANGUAGE PatternSignatures #-}
 module Main where
 
 import GHC.Conc
@@ -29,13 +30,13 @@ main = do newStablePtr stdout
 
           -- Atomic block that retries after reading 0 TVars
           s1 <- Control.Exception.catch (atomically retry )
-                   (\e -> return ("Caught: " ++ (show e) ++ "\n"))
+                   (\(e::SomeException) -> return ("Caught: " ++ (show e) ++ "\n"))
           putStr s1
 
           -- Atomic block that retries after reading 1 TVar
           t1 <- atomically ( inittvar )
           s1 <- Control.Exception.catch (atomically ( deadlock1 t1 ))
-                   (\e -> return ("Caught: " ++ (show e) ++ "\n"))
+                   (\(e::SomeException) -> return ("Caught: " ++ (show e) ++ "\n"))
           putStr s1
           
 
index 24b9a50..6a65add 100644 (file)
@@ -1,3 +1,4 @@
+{-# LANGUAGE PatternSignatures #-}
 module Main where
 
 import GHC.Conc
@@ -93,7 +94,7 @@ iteration n =
 
           putStrLn "T6"
           Control.Exception.catch (atomically ( elseTestZ sv1 sv2 ))
-                 (\e -> putStr ("Caught: " ++ (show e) ++ "\n"))
+                 (\(e::SomeException) -> putStr ("Caught: " ++ (show e) ++ "\n"))
           vs <- atomically ( snapshot sv1 sv2 )
           print vs
 
index 5c27368..5e37a93 100644 (file)
@@ -65,6 +65,6 @@ main = do
   putStr("\nAfter: ")
   mapM (\v -> putStr ((show v) ++ " " )) (sort fin_vals)
   putStr("\n")
-  if ((sort fin_vals) == init_vals) then return () else throwDyn "Mismatch"
+  if ((sort fin_vals) == init_vals) then return () else throw (ErrorCall "Mismatch")
 
 
index fb0018b..64da381 100644 (file)
@@ -1,3 +1,4 @@
+{-# LANGUAGE PatternSignatures #-}
 module Main where
 
 import GHC.Conc
@@ -20,9 +21,9 @@ main = do
   putStr "\nAdding an invraiant that's false when attemted to be added\n"
   Control.Exception.catch (atomically ( do writeTVar x 100
                                            alwaysSucceeds ( do v <- readTVar x 
-                                                               if (v == 100) then throwDyn "URK" else return () )
+                                                               if (v == 100) then throw (ErrorCall "URK") else return () )
                                            writeTVar x 0 ) )
-      (\e -> putStr ("Caught: " ++ (show e) ++ "\n"))
+      (\(e::SomeException) -> putStr ("Caught: " ++ (show e) ++ "\n"))
 
   putStr "\nWriting to a TVar watched by a trivially true invariant\n"
   atomically ( writeTVar x 17 )
@@ -34,30 +35,30 @@ main = do
   atomically ( writeTVar x 18 )
 
   putStr "\nAdding a trivially false invariant (no TVar access)\n"
-  Control.Exception.catch (atomically ( alwaysSucceeds ( throwDyn "Exn raised in invariant" ) ) )
-      (\e -> putStr ("Caught: " ++ (show e) ++ "\n"))
+  Control.Exception.catch (atomically ( alwaysSucceeds ( throw (ErrorCall "Exn raised in invariant") ) ) )
+      (\(e::SomeException) -> putStr ("Caught: " ++ (show e) ++ "\n"))
 
   putStr "\nAdding a trivially false invariant (no TVar access)\n"
-  Control.Exception.catch (atomically ( always ( throwDyn "Exn raised in invariant" ) ) )
-      (\e -> putStr ("Caught: " ++ (show e) ++ "\n"))
+  Control.Exception.catch (atomically ( always ( throw (ErrorCall "Exn raised in invariant") ) ) )
+      (\(e::SomeException) -> putStr ("Caught: " ++ (show e) ++ "\n"))
 
   putStr "\nAdding a trivially false invariant (no TVar access)\n"
   Control.Exception.catch (atomically ( always ( return False ) ) )
-      (\e -> putStr ("Caught: " ++ (show e) ++ "\n"))
+      (\(e::SomeException) -> putStr ("Caught: " ++ (show e) ++ "\n"))
 
   putStr "\nAdding a trivially false invariant (with TVar access)\n"
   Control.Exception.catch (atomically ( 
                 alwaysSucceeds ( do t <- readTVar x
-                                    throwDyn "Exn raised in invariant" ) ) )
-      (\e -> putStr ("Caught: " ++ (show e) ++ "\n"))
+                                    throw (ErrorCall "Exn raised in invariant") ) ) )
+      (\(e::SomeException) -> putStr ("Caught: " ++ (show e) ++ "\n"))
 
   putStr "\nAdding a third invariant true if TVar != 42\n"
   atomically ( alwaysSucceeds ( do t <- readTVar x
-                                   if (t == 42) then throwDyn "Exn raised in invariant" else return () ) )
+                                   if (t == 42) then throw (ErrorCall "Exn raised in invariant") else return () ) )
 
   putStr "\nViolating third invariant by setting TVar to 42\n"
   Control.Exception.catch (atomically ( writeTVar x 42 ) )
-      (\e -> putStr ("Caught: " ++ (show e) ++ "\n"))
+      (\(e::SomeException) -> putStr ("Caught: " ++ (show e) ++ "\n"))
 
   putStr "\nChecking final TVar contents\n"
   t <- atomically ( readTVar x )
index be28433..5839ea3 100644 (file)
@@ -1,39 +1,39 @@
-\r
-Starting\r
-\r
-Adding trivially true invariant (no TVar access)\r
-\r
-Adding trivially true invariant (no TVar access)\r
-\r
-Adding a trivially true invariant (TVar access)\r
-\r
-Adding an invraiant that's false when attemted to be added\r
-Caught: exception :: [Char]\r
-\r
-Writing to a TVar watched by a trivially true invariant\r
-\r
-Adding a second trivially true invariant (same TVar access)\r
-\r
-Writing to a TVar watched by both trivially true invariants\r
-\r
-Adding a trivially false invariant (no TVar access)\r
-Caught: exception :: [Char]\r
-\r
-Adding a trivially false invariant (no TVar access)\r
-Caught: exception :: [Char]\r
-\r
-Adding a trivially false invariant (no TVar access)\r
-Caught: Transacional invariant violation\r
-\r
-Adding a trivially false invariant (with TVar access)\r
-Caught: exception :: [Char]\r
-\r
-Adding a third invariant true if TVar != 42\r
-\r
-Violating third invariant by setting TVar to 42\r
-Caught: exception :: [Char]\r
-\r
-Checking final TVar contents\r
-Final value = 18\r
-\r
-Done\r
+
+Starting
+
+Adding trivially true invariant (no TVar access)
+
+Adding trivially true invariant (no TVar access)
+
+Adding a trivially true invariant (TVar access)
+
+Adding an invraiant that's false when attemted to be added
+Caught: URK
+
+Writing to a TVar watched by a trivially true invariant
+
+Adding a second trivially true invariant (same TVar access)
+
+Writing to a TVar watched by both trivially true invariants
+
+Adding a trivially false invariant (no TVar access)
+Caught: Exn raised in invariant
+
+Adding a trivially false invariant (no TVar access)
+Caught: Exn raised in invariant
+
+Adding a trivially false invariant (no TVar access)
+Caught: Transacional invariant violation
+
+Adding a trivially false invariant (with TVar access)
+Caught: Exn raised in invariant
+
+Adding a third invariant true if TVar != 42
+
+Violating third invariant by setting TVar to 42
+Caught: Exn raised in invariant
+
+Checking final TVar contents
+Final value = 18
+
+Done
index 0bab8e2..26632d9 100644 (file)
@@ -1,3 +1,4 @@
+{-# LANGUAGE PatternSignatures #-}
 module Main where
 
 import GHC.Conc
@@ -16,8 +17,8 @@ main = do putStr "Starting\n";
           putStr ("Raising uncaught exn in atomic block\n");
           Control.Exception.catch (atomically ( 
                                      do writeTVar t 17
-                                        throwDyn "Exn raised in a tx" ) )
-           (\e -> putStr ("Caught: " ++ (show e) ++ "\n"))
+                                        throw (ErrorCall "Exn raised in a tx") ) )
+           (\(e::SomeException) -> putStr ("Caught: " ++ (show e) ++ "\n"))
 
           v <- atomically (readTVar t)
           putStr ("TVar contains " ++ (show v) ++ "\n")
@@ -29,7 +30,7 @@ main = do putStr "Starting\n";
           Control.Exception.catch (atomically ( 
                                      catchSTM ( do writeTVar t 17 )
                                               ( \e -> throw e  ) ) )
-           (\e -> putStr ("Caught: " ++ (show e) ++ "\n"))
+           (\(e::SomeException) -> putStr ("Caught: " ++ (show e) ++ "\n"))
 
           v <- atomically (readTVar t)
           putStr ("TVar contains " ++ (show v) ++ "\n")
@@ -41,9 +42,9 @@ main = do putStr "Starting\n";
           putStr ("Raising caught and rethrown exn in atomic block\n");
           Control.Exception.catch (atomically ( 
                                      catchSTM ( do writeTVar t 42
-                                                   throwDyn "Exn raised in a tx" )
+                                                   throw (ErrorCall "Exn raised in a tx") )
                                               ( \e -> throw e  ) ) )
-           (\e -> putStr ("Caught: " ++ (show e) ++ "\n"))
+           (\(e::SomeException) -> putStr ("Caught: " ++ (show e) ++ "\n"))
 
           v <- atomically (readTVar t)
           putStr ("TVar contains " ++ (show v) ++ "\n")
@@ -56,7 +57,7 @@ main = do putStr "Starting\n";
           v <- atomically ( 
                     do writeTVar t 0
                        catchSTM ( do writeTVar t 1
-                                     throwDyn "Exn raised in a tx" )
+                                     throw (ErrorCall "Exn raised in a tx") )
                                 ( \_ -> return () ) 
                        readTVar t )
           putStr ("TVar contained " ++ (show v) ++ " at end of atomic block\n")
@@ -72,7 +73,7 @@ main = do putStr "Starting\n";
                                      ( catchSTM ( retry )
                                                 ( \e -> throw e  ) ) 
                                      `orElse` ( return () ) ) )
-           (\e -> putStr ("Caught: " ++ (show e) ++ "\n"))
+           (\(e::SomeException) -> putStr ("Caught: " ++ (show e) ++ "\n"))
 
           v <- atomically (readTVar t)
           putStr ("TVar contains " ++ (show v) ++ "\n")
index 9e98ddf..bd92cf2 100644 (file)
@@ -1,15 +1,15 @@
-Starting\r
-TVar contains 42\r
-Raising uncaught exn in atomic block\r
-Caught: exception :: [Char]\r
-TVar contains 42\r
-Trying a catchSTM without raising an exception\r
-TVar contains 17\r
-Raising caught and rethrown exn in atomic block\r
-Caught: exception :: [Char]\r
-TVar contains 17\r
-Raising caught and rethrown exn in atomic block\r
-TVar contained 0 at end of atomic block\r
-TVar contains 0\r
-Testing retry inside catchSTM\r
-TVar contains 0\r
+Starting
+TVar contains 42
+Raising uncaught exn in atomic block
+Caught: Exn raised in a tx
+TVar contains 42
+Trying a catchSTM without raising an exception
+TVar contains 17
+Raising caught and rethrown exn in atomic block
+Caught: Exn raised in a tx
+TVar contains 17
+Raising caught and rethrown exn in atomic block
+TVar contained 0 at end of atomic block
+TVar contains 0
+Testing retry inside catchSTM
+TVar contains 0
index 295b58e..31d364c 100644 (file)
@@ -14,7 +14,7 @@ main = do
   putStr "\nAttaching invariant\n";
   atomically ( alwaysSucceeds ( do v1 <- readTVar x1
                                    v23 <- readTVar (if (v1 >= 0) then x2 else x3)
-                                   if (v23 > v1) then throwDyn "Exn" else return () ) )
+                                   if (v23 > v1) then throw (ErrorCall "Exn") else return () ) )
 
   putStr "\nTouching invariant (should keep on same TVars)\n"
   atomically ( do writeTVar x1 1