equal
deleted
inserted
replaced
236 Thread.fork |
236 Thread.fork |
237 (((fn () => body () handle Exn.Interrupt => ()) |
237 (((fn () => body () handle Exn.Interrupt => ()) |
238 |> Runtime.debugging |
238 |> Runtime.debugging |
239 |> Runtime.toplevel_error |
239 |> Runtime.toplevel_error |
240 (fn exn => priority ("## INTERNAL ERROR ##\n" ^ ML_Compiler.exn_message exn))), |
240 (fn exn => priority ("## INTERNAL ERROR ##\n" ^ ML_Compiler.exn_message exn))), |
241 SimpleThread.attributes interrupts); |
241 Simple_Thread.attributes interrupts); |
242 |
242 |
243 |
243 |
244 (* node transactions -- maintaining stable checkpoints *) |
244 (* node transactions -- maintaining stable checkpoints *) |
245 |
245 |
246 exception FAILURE of state * exn; |
246 exception FAILURE of state * exn; |
636 in (st', st') end; |
636 in (st', st') end; |
637 |
637 |
638 fun run_command thy_name tr st = |
638 fun run_command thy_name tr st = |
639 (case |
639 (case |
640 (case init_of tr of |
640 (case init_of tr of |
641 SOME name => Exn.capture (fn () => ThyLoad.check_name thy_name name) () |
641 SOME name => Exn.capture (fn () => Thy_Load.check_name thy_name name) () |
642 | NONE => Exn.Result ()) of |
642 | NONE => Exn.Result ()) of |
643 Exn.Result () => |
643 Exn.Result () => |
644 (case transition true tr st of |
644 (case transition true tr st of |
645 SOME (st', NONE) => (status tr Markup.finished; SOME st') |
645 SOME (st', NONE) => (status tr Markup.finished; SOME st') |
646 | SOME (_, SOME (exn as Exn.Interrupt, _)) => reraise exn |
646 | SOME (_, SOME (exn as Exn.Interrupt, _)) => reraise exn |