src/Pure/ML/exn_trace_polyml-5.5.1.ML
author desharna
Mon, 01 Sep 2014 13:23:05 +0200
changeset 58103 c23bdb4ed2f6
parent 56283 20cf88cd3188
child 59055 5a7157b8e870
permissions -rw-r--r--
document 'map_transfer'

(*  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;