# HG changeset patch # User wenzelm # Date 1284115160 -7200 # Node ID 28d3809ff91f116ec7f6166898f6df13d99e39fd # Parent e9a442606db3c8cca122b7da23333da90517ba92 primitive use_text: let interrupts pass unhindered; diff -r e9a442606db3 -r 28d3809ff91f src/Pure/ML-Systems/compiler_polyml-5.2.ML --- a/src/Pure/ML-Systems/compiler_polyml-5.2.ML Thu Sep 09 21:30:33 2010 +0200 +++ b/src/Pure/ML-Systems/compiler_polyml-5.2.ML Fri Sep 10 12:39:20 2010 +0200 @@ -37,8 +37,10 @@ (while not (List.null (! in_buffer)) do PolyML.compiler (get, parameters) ()) handle exn => - (put ("Exception- " ^ General.exnMessage exn ^ " raised"); - error (output ()); reraise exn); + if Exn.is_interrupt exn then reraise exn + else + (put ("Exception- " ^ General.exnMessage exn ^ " raised"); + error (output ()); reraise exn); in if verbose then print (output ()) else () end; fun use_file context verbose name = diff -r e9a442606db3 -r 28d3809ff91f src/Pure/ML-Systems/compiler_polyml-5.3.ML --- a/src/Pure/ML-Systems/compiler_polyml-5.3.ML Thu Sep 09 21:30:33 2010 +0200 +++ b/src/Pure/ML-Systems/compiler_polyml-5.3.ML Fri Sep 10 12:39:20 2010 +0200 @@ -41,8 +41,10 @@ (while not (List.null (! in_buffer)) do PolyML.compiler (get, parameters) ()) handle exn => - (put ("Exception- " ^ General.exnMessage exn ^ " raised"); - error (output ()); reraise exn); + if Exn.is_interrupt exn then reraise exn + else + (put ("Exception- " ^ General.exnMessage exn ^ " raised"); + error (output ()); reraise exn); in if verbose then print (output ()) else () end; fun use_file context verbose name =