/usr/share/mozart/doc/ozcar/node7.html is in mozart-doc 1.4.0-8ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>7 Unhandled Exceptions</TITLE><LINK href="ozdoc.css" rel="stylesheet" type="text/css"></HEAD><BODY><TABLE align="center" border="0" cellpadding="6" cellspacing="6" class="nav"><TR bgcolor="#DDDDDD"><TD><A href="node6.html#chapter.data"><< Prev</A></TD><TD><A href="index.html">- Up -</A></TD><TD><A href="node8.html#chapter.remote">Next >></A></TD></TR></TABLE><DIV id="chapter.exceptions"><H1><A name="chapter.exceptions">7 Unhandled Exceptions</A></H1><P> Errors in programs often manifest themselves by unhandled exceptions. Ozcar supports post-mortem inspection of threads that died of a system or error exception. (User exceptions do not provide debugging information - work around this by raising your exceptions as error exceptions, using <CODE>Exception<SPAN class="keyword">.</SPAN>raiseError</CODE>.) </P><DIV class="apropos"><P class="margin">Exception Handling</P><P> Any unhandled exception, which is normally just printed out to standard error, is caught by Ozcar. It attaches the dying thread and displays the stack from the time the exception was raised (or re-raised). The topmost frame gets the description <CODE>exception</CODE> followed by the exception value itself. Note that all stack frames include environment information. The description of the exception itself is provided in the Status Line. </P></DIV><DIV class="apropos"><P class="margin">Example</P><P> Consider the following code. Its author forgot to handle some value in his patterns, leading to a missing <CODE><SPAN class="keyword">else</SPAN></CODE> exception, as depicted in <A href="node7.html#picture.exception">Picture 7.1</A>: </P><BLOCKQUOTE class="code"><CODE><SPAN class="keyword">local</SPAN> <BR> <SPAN class="keyword">proc</SPAN><SPAN class="variablename"> </SPAN>{<SPAN class="functionname">Check</SPAN> X}<BR> <SPAN class="keyword">case</SPAN> X<BR> <SPAN class="keyword">of</SPAN> foo <SPAN class="keyword">then</SPAN> {Show <SPAN class="string">'This is a foo'</SPAN>}<BR> <SPAN class="keyword">[]</SPAN> bar <SPAN class="keyword">then</SPAN> {Show <SPAN class="string">'This is a bar'</SPAN>}<BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR><SPAN class="keyword">in</SPAN> <BR> {Check foobar}<BR><SPAN class="keyword">end</SPAN></CODE></BLOCKQUOTE><P> </P><DIV class="picture" id="picture.exception"><HR><P><A name="picture.exception"></A></P><P></P><DIV align="center"><IMG alt="" src="exception.gif"></DIV><P> </P><P class="caption"><STRONG>Picture 7.1:</STRONG> An Exception has not been Handled</P><HR></DIV><P> </P></DIV><DIV class="apropos"><P class="margin">Source View</P><P> Emacs displays the location in the source code where the exception was raised. Note that the bar is colored red, as the position has been reached unexpectedly. </P><DIV class="picture" id="picture.exception-emacs"><HR><P><A name="picture.exception-emacs"></A></P><P></P><DIV align="center"><IMG alt="" src="exception-emacs.gif"></DIV><P> </P><P class="caption"><STRONG>Picture 7.2:</STRONG> Emacs Showing the Error Position</P><HR></DIV><P> </P></DIV></DIV><TABLE align="center" border="0" cellpadding="6" cellspacing="6" class="nav"><TR bgcolor="#DDDDDD"><TD><A href="node6.html#chapter.data"><< Prev</A></TD><TD><A href="index.html">- Up -</A></TD><TD><A href="node8.html#chapter.remote">Next >></A></TD></TR></TABLE><HR><ADDRESS><A href="http://www.ps.uni-sb.de/~lorenz/">Benjamin Lorenz</A> and <A href="http://www.ps.uni-sb.de/~kornstae/">Leif Kornstaedt</A><BR><SPAN class="version">Version 1.4.0 (20110908185330)</SPAN></ADDRESS></BODY></HTML>
|