src/Pure/PIDE/execution.ML
changeset 54678 87910da843d5
parent 54646 2b38549374ba
child 56291 e79f76a48449
equal deleted inserted replaced
54677:ae5426994961 54678:87910da843d5
   105                 Exn.capture (Future.interruptible_task e) ()
   105                 Exn.capture (Future.interruptible_task e) ()
   106                 |> Future.identify_result pos;
   106                 |> Future.identify_result pos;
   107               val _ = status task [Markup.joined];
   107               val _ = status task [Markup.joined];
   108               val _ =
   108               val _ =
   109                 (case result of
   109                 (case result of
   110                   Exn.Res _ => ()
   110                   Exn.Exn exn =>
   111                 | Exn.Exn exn =>
       
   112                    (status task [Markup.failed];
   111                    (status task [Markup.failed];
       
   112                     status task [Markup.finished];
   113                     Output.report (Markup.markup_only Markup.bad);
   113                     Output.report (Markup.markup_only Markup.bad);
   114                     if exec_id = 0 then ()
   114                     if exec_id = 0 then ()
   115                     else List.app (Future.error_msg pos) (ML_Compiler.exn_messages_ids exn)));
   115                     else List.app (Future.error_msg pos) (ML_Compiler.exn_messages_ids exn))
   116               val _ = status task [Markup.finished];
   116                 | Exn.Res _ =>
       
   117                     status task [Markup.finished])
   117             in Exn.release result end);
   118             in Exn.release result end);
   118 
   119 
   119       val _ = status (Future.task_of future) [Markup.forked];
   120       val _ = status (Future.task_of future) [Markup.forked];
   120     in future end)) ();
   121     in future end)) ();
   121 
   122