<div dir="ltr"><div class="gmail_default" style="font-size:small">The frame number is best taken from a backtrace produced by :B. Here’s an example:</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default"><div class="gmail_default">? (defun foo (x)</div><div class="gmail_default"> (let ((y (+ x x)))</div><div class="gmail_default"> (if (> x 9) (break) (foo (1+ x))) y))</div><div class="gmail_default">FOO</div><div class="gmail_default">? (foo 1)</div><div class="gmail_default">> Break: Break</div><div class="gmail_default">> While executing: FOO, in process listener(1).</div><div class="gmail_default">> Type :GO to continue, :POP to abort, :R for a list of available restarts.</div><div class="gmail_default">> If continued: Return from BREAK.</div><div class="gmail_default">> Type :? for other options.</div><div class="gmail_default">1 > (:b :count 4)</div><div class="gmail_default"> (210668F8) : 0 (FOO 10) 141</div><div class="gmail_default"> (21066918) : 1 (FOO 9) 213</div><div class="gmail_default"> (21066938) : 2 (FOO 8) 213</div><div class="gmail_default"> (21066958) : 3 (FOO 7) 213</div><div class="gmail_default">1 > (:arg x 0)</div><div class="gmail_default">10</div><div class="gmail_default">1 > (:local y 0)</div><div class="gmail_default">20</div><div class="gmail_default">1 > (:arg x 1)</div><div class="gmail_default">9</div><div class="gmail_default">1 > (:local y 1)</div><div class="gmail_default">18</div><div class="gmail_default">1 > (:arg x 3)</div><div class="gmail_default">7</div><div class="gmail_default">1 > (:local y 3)</div><div class="gmail_default">14</div><div class="gmail_default"><br></div><div class="gmail_default">:local and :arg are only useful if you know the names of the local variables and args. You can show them by displaying the whole frame:</div><div class="gmail_default"><br></div><div class="gmail_default"><div class="gmail_default">1 > (:f 2)</div><div class="gmail_default"> (21066938) : 2 (FOO 8) 213</div><div class="gmail_default"> (X)</div><div class="gmail_default"> X: 8</div><div class="gmail_default"> Y: 16</div><div class="gmail_default"><br></div><div class="gmail_default">All of which is why I use Slime instead of the built-in CCL debugger. But that’s hard to do while debugging the loading of Slime.</div><div class="gmail_default"><br></div><div class="gmail_default">Bill</div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Aug 17, 2016 at 10:28 PM, Mirko Vukovic <span dir="ltr"><<a href="mailto:mirko.vukovic@gmail.com" target="_blank">mirko.vukovic@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi,<div><br></div><div>I am trying to debug CCL startup on Emacs' Slime (Windows 7). I inserted a breakpoint</div><div>in swank's START-SERVER, and get the following output in the *inferior-lisp* buffer:</div><div><br></div><div><div><font face="monospace">Welcome to Clozure Common Lisp Version 1.11-r16635 (WindowsX8664)!</font></div><div><font face="monospace"><br></font></div><div><font face="monospace">CCL is developed and maintained by Clozure Associates. For more information</font></div><div><font face="monospace">about CCL visit <a href="http://ccl.clozure.com" target="_blank">http://ccl.clozure.com</a>. To enquire about Clozure's Common Lisp</font></div><div><font face="monospace">consulting services e-mail <a href="mailto:info@clozure.com" target="_blank">info@clozure.com</a> or visit <a href="http://www.clozure.com" target="_blank">http://www.clozure.com</a>.</font></div><div><font face="monospace"><br></font></div><div><font face="monospace">? ;Loading #P"c:/Users/977315/.emacs.d/<wbr>elisp/slime/swank-loader.lisp"<wbr>...</font></div><div><font face="monospace">> Break: start-server</font></div><div><font face="monospace">> While executing: SWANK:START-SERVER, in process listener(1).</font></div><div><font face="monospace">> Type :GO to continue, :POP to abort, :R for a list of available restarts.</font></div><div><font face="monospace">> If continued: Return from BREAK.</font></div><div><font face="monospace">> Type :? for other options.</font></div><div><font face="monospace">1 > </font></div></div><div><font face="monospace"><br></font></div><div><font face="monospace"><span style="line-height:18px">I'd like to examine the values of some variables using :LOCAL or :ARG. </span></font></div><div><font face="monospace"><span style="line-height:18px">How do I refer to a variable? I tried 'foo, foo, "foo" (and the </span></font></div><div><font face="monospace"><span style="line-height:18px">uppercase variants). I am using 0 as frame number as </span></font></div><div><font face="monospace"><span style="line-height:18px">(:V 0 0) gave sensible </span></font><span style="line-height:18px;font-family:monospace">results.</span></div><div><span style="line-height:18px;font-family:monospace"><br></span></div><div><span style="line-height:18px;font-family:monospace">Thanks,</span></div><div><span style="line-height:18px;font-family:monospace"><br></span></div><div><span style="line-height:18px;font-family:monospace">Mirko</span></div><div><font face="monospace"><span style="line-height:18px"><br></span></font></div><div><font face="monospace"><span style="line-height:18px"><br></span></font></div></div>
<br>______________________________<wbr>_________________<br>
Openmcl-devel mailing list<br>
<a href="mailto:Openmcl-devel@clozure.com">Openmcl-devel@clozure.com</a><br>
<a href="https://lists.clozure.com/mailman/listinfo/openmcl-devel" rel="noreferrer" target="_blank">https://lists.clozure.com/<wbr>mailman/listinfo/openmcl-devel</a><br>
<br></blockquote></div><br></div>