[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | David Fox <david.fox@l...> |
| Subject: | Re: [Caml-list] Exceptions and at_exit |
David Fox <david@lindows.com> writes:
> I have some at_exit functions that must execute before my program
> exits, but I also want to see a traceback of any exception that
> occurs. Can I catch the exception, print a traceback like the one you
> get when you exit and then call exit? Or can I catch the exception,
> execute the at_exit functions, and then re-raise the exception? How
> *do* you re-raise an exception, anyway? Do you just catch the
> exception and raise it?
My confusion about re-raising exceptions was caused by the fact that
you get different behavior if you say something like
try ... with
Failure msg -> <do some stuff>; raise (Failure msg)
vs something like
try ... with
exn ->
begin match exn with Failure msg -> <do some stuff> end;
raise exn
In the second case, you are re-raising the exception, in the first
you are raising a new exception and your original traceback is lost.
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners