more conventional exception propagation -- taking into account Simple_Thread.fork wrapping;
--- a/src/Pure/Concurrent/bash.ML Sun Nov 28 15:28:48 2010 +0100
+++ b/src/Pure/Concurrent/bash.ML Sun Nov 28 15:34:35 2010 +0100
@@ -36,7 +36,8 @@
| Posix.Process.W_STOPPED s =>
Result (512 + LargeWord.toInt (Posix.Signal.toWord s)));
in Synchronized.change result (K res) end
- handle _ (*sic*) => Synchronized.change result (fn Wait => Signal | res => res)));
+ handle exn =>
+ (Synchronized.change result (fn Wait => Signal | res => res); reraise exn)));
fun terminate () =
let