[slime-devel] LispWorks debugger bug

Bill_Clementson at peoplesoft.com Bill_Clementson at peoplesoft.com
Fri Jun 25 14:46:55 UTC 2004





Hi all,

The "B" (sldb-break-with-default-debugger) option in sldb doesn't work with
LispWorks on Windows2000. It does work with ACL and CLISP on Windows2000.
To demonstrate:

#1: Create and run a function that causes an error:

CL-USER> (defun test-sldb () (/ 42 0))
TEST-SLDB
CL-USER> (test-sldb)

#2: In the resulting sldb buffer, press "B"

Division-by-zero caused by / of (42 0).
   [Condition of type DIVISION-BY-ZERO]

Restarts:
  0: [VALUE] Return a value to use.
  1: [NEW-ARGS] Supply new arguments to use.
  2: [ABORT] Abort handling SLIME request.
  3: [ABORT] Quit process.

Backtrace:
  0: CONDITIONS::CONDITIONS-ERROR (:INVISIBLEP T DIVISION-BY-ZERO
(:OPERATION / :OPERANDS (42 0)))
  1: SYSTEM::DIVISION-BY-ZERO-ERROR (/ 42 0)
  2: / (NIL NIL NIL)
  3: TEST-SLDB NIL

#3: The same sldb error will be displayed again. Press "B" a second time.
The following error is displayed in the sldb buffer:

No applicable methods for #<STANDARD-GENERIC-FUNCTION
ENVIRONMENT-INTERNALS:ENVIRONMENT-DISPLAY-DEBUGGER 207B54B2> with args
(#<ENVIRONMENT:TTY-ENVIRONMENT 207B456C>)
   [Condition of type SIMPLE-ERROR]

Restarts:
  0: [CONTINUE] Call #<STANDARD-GENERIC-FUNCTION
ENVIRONMENT-INTERNALS:ENVIRONMENT-DISPLAY-DEBUGGER 207B54B2> again
  1: [VALUE] Return a value to use.
  2: [NEW-ARGS] Supply new arguments to use.
  3: [ABORT] Abort handling SLIME request.
  4: [ABORT] Quit process.

Backtrace:
  0: CONDITIONS::CONDITIONS-ERROR (:INVISIBLEP T "No applicable methods for
~S with args ~S" (#<STANDARD-GENERIC-FUNCTION
ENVIRONMENT-INTERNALS:ENVIRONMENT-DISPLAY-DEBUGGER 207B54B2>
(#<ENVIRONMENT:TTY-ENVIRONMENT 207B456C>)))
  1: CERROR ("Call ~S again" "No applicable methods for ~S with args ~S"
NIL (#<STANDARD-GENERIC-FUNCTION
ENVIRONMENT-INTERNALS:ENVIRONMENT-DISPLAY-DEBUGGER 207B54B2>
(#<ENVIRONMENT:TTY-ENVIRONMENT 207B456C>)))
  2: (METHOD NO-APPLICABLE-METHOD (T)) (#<STANDARD-GENERIC-FUNCTION
ENVIRONMENT-INTERNALS:ENVIRONMENT-DISPLAY-DEBUGGER 207B54B2> NIL
(#<ENVIRONMENT:TTY-ENVIRONMENT 207B456C>))
  3: CLOS::CACHE-MISS-FUNCTION (:INVISIBLEP T NIL
(#<ENVIRONMENT:TTY-ENVIRONMENT 207B456C>))
  4: DBG::DEBUG2 (#<DIVISION-BY-ZERO 2069DFC4> NIL NIL)
  5: DBG::DEBUG1 (NIL #<DIVISION-BY-ZERO 2069DFC4> NIL NIL)
  6: INVOKE-DEBUGGER (NIL (#<DIVISION-BY-ZERO 2069DFC4>))
  7: CONDITIONS::CONDITIONS-ERROR (:INVISIBLEP T DIVISION-BY-ZERO
(:OPERATION / :OPERANDS (42 0)))
  8: SYSTEM::DIVISION-BY-ZERO-ERROR (/ 42 0)
  9: / (NIL NIL NIL)
  10: TEST-SLDB NIL

I'm not sure if this used to work properly in LW or not. This is tested
with the latest cvs SLIME.

- Bill






More information about the slime-devel mailing list