src/Pure/ML/exn_trace_polyml-5.5.1.ML
author blanchet
Wed, 24 Sep 2014 15:45:55 +0200
changeset 58425 246985c6b20b
parent 56283 20cf88cd3188
child 59055 5a7157b8e870
permissions -rw-r--r--
simpler proof

(*  Title:      Pure/ML/exn_trace_polyml-5.5.1.ML
    Author:     Makarius

Exception trace for Poly/ML 5.5.1, using regular Isabelle output.
*)

fun print_exception_trace exn_message e =
  PolyML.Exception.traceException
    (e, fn (trace, exn) =>
      let
        val title = "Exception trace - " ^ exn_message exn;
        val _ = tracing (cat_lines (title :: trace));
      in reraise exn end);

PolyML.Compiler.reportExhaustiveHandlers := true;