# HG changeset patch # User lcp # Date 793904879 -3600 # Node ID cae574c091378787ba033ef018f993b8b7d3b90b # Parent 8aaa8c5a567e4243f2333b1cdf89801d06848e4d Now prove_goalw_cterm calls print_sign_exn_unit, so that the rest of the error message ("The exception above was raised for...") will appear. And print_exn calls print_sign_exn_unit so that it can re-raise the SAME exception. diff -r 8aaa8c5a567e -r cae574c09137 src/Pure/goals.ML --- a/src/Pure/goals.ML Mon Feb 27 18:05:38 1995 +0100 +++ b/src/Pure/goals.ML Mon Feb 27 18:07:59 1995 +0100 @@ -201,7 +201,7 @@ Some(st,_) => st | _ => error ("prove_goal: tactic failed")) in mkresult (true, cond_timeit (!proof_timing) statef) end - handle e => (print_sign_exn (#sign (rep_cterm chorn)) e; + handle e => (print_sign_exn_unit (#sign (rep_cterm chorn)) e; error ("The exception above was raised for\n" ^ string_of_cterm chorn)); @@ -439,7 +439,7 @@ (*Prints exceptions nicely at top level; raises the exception in order to have a polymorphic type!*) -fun print_exn e = (print_sign_exn (top_sg()) e; raise e); +fun print_exn e = (print_sign_exn_unit (top_sg()) e; raise e); end; end;