proper Exn.capture with check_interrupt (amending a3dcae9a2ebe);
authorwenzelm
Thu, 12 Oct 2023 15:45:06 +0200
changeset 78765 f971ccccfd8e
parent 78764 a3dcae9a2ebe
child 78766 5578341489cb
proper Exn.capture with check_interrupt (amending a3dcae9a2ebe);
src/Pure/Concurrent/isabelle_thread.ML
--- a/src/Pure/Concurrent/isabelle_thread.ML	Thu Oct 12 10:56:45 2023 +0200
+++ b/src/Pure/Concurrent/isabelle_thread.ML	Thu Oct 12 15:45:06 2023 +0200
@@ -160,7 +160,7 @@
 structure Exn: EXN =
 struct
   open Exn;
-  val capture = capture0;
+  fun capture f x = Res (f x) handle e => Exn (check_interrupt e);
   fun capture_body e = capture e ();
 end;