blob: 25441b9a0e6ef6612a1149c71395743b246a92f4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
<h3 class="section">The Lisp Debugger</h3> <p>The ordinary <em>Lisp debugger</em> provides the ability to suspend evaluation of a form. While evaluation is suspended (a state that is commonly known as a <em>break</em>), you may examine the run time stack, examine the values of local or global variables, or change those values. Since a break is a recursive edit, all the usual editing facilities of Emacs are available; you can even run programs that will enter the debugger recursively. See <a href="recursive-editing">Recursive Editing</a>. </p> <table class="menu" border="0" cellspacing="0"> <tr>
<td align="left" valign="top">• <a href="error-debugging" accesskey="1">Error Debugging</a>
</td>
<td> </td>
<td align="left" valign="top">Entering the debugger when an error happens. </td>
</tr> <tr>
<td align="left" valign="top">• <a href="infinite-loops" accesskey="2">Infinite Loops</a>
</td>
<td> </td>
<td align="left" valign="top">Stopping and debugging a program that doesn’t exit. </td>
</tr> <tr>
<td align="left" valign="top">• <a href="function-debugging" accesskey="3">Function Debugging</a>
</td>
<td> </td>
<td align="left" valign="top">Entering it when a certain function is called. </td>
</tr> <tr>
<td align="left" valign="top">• <a href="variable-debugging" accesskey="4">Variable Debugging</a>
</td>
<td> </td>
<td align="left" valign="top">Entering it when a variable is modified. </td>
</tr> <tr>
<td align="left" valign="top">• <a href="explicit-debug" accesskey="5">Explicit Debug</a>
</td>
<td> </td>
<td align="left" valign="top">Entering it at a certain point in the program. </td>
</tr> <tr>
<td align="left" valign="top">• <a href="using-debugger" accesskey="6">Using Debugger</a>
</td>
<td> </td>
<td align="left" valign="top">What the debugger does. </td>
</tr> <tr>
<td align="left" valign="top">• <a href="backtraces" accesskey="7">Backtraces</a>
</td>
<td> </td>
<td align="left" valign="top">What you see while in the debugger. </td>
</tr> <tr>
<td align="left" valign="top">• <a href="debugger-commands" accesskey="8">Debugger Commands</a>
</td>
<td> </td>
<td align="left" valign="top">Commands used while in the debugger. </td>
</tr> <tr>
<td align="left" valign="top">• <a href="invoking-the-debugger" accesskey="9">Invoking the Debugger</a>
</td>
<td> </td>
<td align="left" valign="top">How to call the function <code>debug</code>. </td>
</tr> <tr>
<td align="left" valign="top">• <a href="internals-of-debugger">Internals of Debugger</a>
</td>
<td> </td>
<td align="left" valign="top">Subroutines of the debugger, and global variables. </td>
</tr> </table><div class="_attribution">
<p class="_attribution-p">
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc. <br>Licensed under the GNU GPL license.<br>
<a href="https://www.gnu.org/software/emacs/manual/html_node/elisp/Debugger.html" class="_attribution-link">https://www.gnu.org/software/emacs/manual/html_node/elisp/Debugger.html</a>
</p>
</div>
|