default ML context for forks, e.g. relevant for debugging and toplevel pretty-printing;
authorwenzelm
Wed, 12 Aug 2015 01:39:31 +0200
changeset 60911 858694df711b
parent 60910 79abcf48c377
child 60912 3852e87e9b88
default ML context for forks, e.g. relevant for debugging and toplevel pretty-printing;
src/Pure/Concurrent/future.ML
src/Pure/ROOT.ML
--- a/src/Pure/Concurrent/future.ML	Wed Aug 12 01:25:00 2015 +0200
+++ b/src/Pure/Concurrent/future.ML	Wed Aug 12 01:39:31 2015 +0200
@@ -429,12 +429,14 @@
   let
     val result = Single_Assignment.var "future" : 'a result;
     val pos = Position.thread_data ();
+    val context = Context.thread_data ();
     fun job ok =
       let
         val res =
           if ok then
             Exn.capture (fn () =>
-              Multithreading.with_attributes atts (fn _ => Position.setmp_thread_data pos e ())) ()
+              Multithreading.with_attributes atts (fn _ =>
+                (Position.setmp_thread_data pos o Context.setmp_thread_data context) e ())) ()
           else Exn.interrupt_exn;
       in assign_result group result (identify_result pos res) end;
   in (result, job) end;
--- a/src/Pure/ROOT.ML	Wed Aug 12 01:25:00 2015 +0200
+++ b/src/Pure/ROOT.ML	Wed Aug 12 01:39:31 2015 +0200
@@ -85,7 +85,15 @@
 use "General/change_table.ML";
 use "General/graph.ML";
 
+
+(* fundamental structures *)
+
+use "name.ML";
+use "term.ML";
+use "context.ML";
+use "context_position.ML";
 use "System/options.ML";
+use "config.ML";
 
 
 (* concurrency within the ML runtime *)
@@ -132,15 +140,6 @@
 use "PIDE/active.ML";
 
 
-(* fundamental structures *)
-
-use "name.ML";
-use "term.ML";
-use "context.ML";
-use "context_position.ML";
-use "config.ML";
-
-
 (* inner syntax *)
 
 use "Syntax/type_annotation.ML";