Subject: Re: Debugging in CMUCL
From: rpw3@rpw3.org (Rob Warnock)
Date: Fri, 15 Aug 2003 08:47:34 -0500
Newsgroups: comp.lang.lisp
Message-ID: <ag2dnQUHZbzreaGiXTWc-g@speakeasy.net>
Raymond Toy  <toy@rtp.ericsson.se> wrote:
+---------------
| >>>>> "Rolf" == Rolf Wester <wester@ilt.fraunhofer.de> writes:
|     Rolf> By the way is there any way to get information about the
|     Rolf> location within the function where the error occured?
| 
| If you get to the debugger, then usually SOURCE will print out the
| source line where the error occurred.
+---------------

To my taste, CMUCL's VSO debugger command, generally with
an argument of 3 (or sometimes larger) tends to give a better
display, e.g.:

	cmu> (defun foo ()
	       (let ((local-variable 17))
	         (break)
	         (1+ local-variable)))
	cmu> (foo)

	Break

	Restarts:
	  0: [CONTINUE] Return from BREAK.
	  1: [ABORT   ] Return to Top-Level.

	Debug  (type H for help)

	(FOO)
	Source: (BREAK)
	0] l
	LOCAL-VARIABLE  =  17

	0] vso 3

	(LAMBDA ()
	  (BLOCK FOO
	    (LET ((LOCAL-VARIABLE 17))
	      (#:***HERE*** (BREAK))
	      (1+ LOCAL-VARIABLE))))
	0] (setf local-variable 43)

	43
	0] continue

	44
	cmu> 


-Rob

-----
Rob Warnock, PP-ASEL-IA		<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607