<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE message PUBLIC
  "-//MLarc//DTD MLarc output files//EN"
  "../../mlarc.dtd"[
  <!ATTLIST message
    listname CDATA #REQUIRED
    title CDATA #REQUIRED
  >
]>

  <?xml-stylesheet href="../../mlarc.xsl" type="text/xsl"?>


<message 
  url="2002/07/062aebd744c5ccd9e413275f56bb43ea"
  from="Xavier Leroy &lt;xavier.leroy@i...&gt;"
  author="Xavier Leroy"
  date="2002-07-14T17:35:20"
  subject="Re: [Caml-list] Exceptions and at_exit"
  prev="2002/07/f44bf8d23d897cca45f7aefaf87e70a7"
  next="2002/07/f19d29f39c16d741976445296fba36ea"
  prev-in-thread="2002/07/2fd34624553a8aed699527062ffd1fc0"
  prev-thread="2002/06/f15aadd13d3b489eec81f1c0af2b9fd9"
  next-thread="2002/06/2d1a7e2c6e0137c0802dd574bf3e64bd"
  root="../../"
  period="month"
  listname="caml-list"
  title="Archives of the Caml mailing list">

<thread subject="[Caml-list] Exceptions and at_exit">
<msg 
  url="2002/06/f0b83f782bbe62a3ebc19986232eb0dd"
  from="David Fox &lt;david@l...&gt;"
  author="David Fox"
  date="2002-06-04T21:01:17"
  subject="[Caml-list] Exceptions and at_exit">
<msg 
  url="2002/06/0eac35b9b56fcae9a3c59800414d1a56"
  from="Remi VANICAT &lt;vanicat@l...&gt;"
  author="Remi VANICAT"
  date="2002-06-04T21:09:15"
  subject="Re: [Caml-list] Exceptions and at_exit">
</msg>
<msg 
  url="2002/07/35dded66c6740523de25c1e3cc6579d6"
  from="David Fox &lt;david.fox@l...&gt;"
  author="David Fox"
  date="2002-07-13T20:28:23"
  subject="Re: [Caml-list] Exceptions and at_exit">
<msg 
  url="2002/07/2fd34624553a8aed699527062ffd1fc0"
  from="William Lovas &lt;wlovas@s...&gt;"
  author="William Lovas"
  date="2002-07-13T20:44:55"
  subject="Re: [Caml-list] Exceptions and at_exit">
<msg 
  url="2002/07/062aebd744c5ccd9e413275f56bb43ea"
  from="Xavier Leroy &lt;xavier.leroy@i...&gt;"
  author="Xavier Leroy"
  date="2002-07-14T17:35:20"
  subject="Re: [Caml-list] Exceptions and at_exit">
</msg>
</msg>
</msg>
</msg>
</thread>

<contents>
&gt; What if you did something like:
&gt; 
&gt;     try ... with
&gt;         Failure msg as exn -&gt; &lt;do some stuff&gt;; raise exn
&gt; 
&gt; Would that leave the original traceback intact?

Yes -- provided &lt;some stuff&gt; doesn't raise exceptions.  The trace back
mechanism relies on reference equality (==) on exception values: if
the program raises an exception that is == to the latest exception
raised, this is considered as a "re-raise" and adds to the traceback;
otherwise, it's considered as an "initial raise" and a fresh traceback is
started.

- Xavier Leroy
-------------------
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

</contents>

</message>

