Controls whether handler frames are printed in debugger output.
dbg
nil
The variable *print-handler-frames*
is used by the debugger when it displays the stack frames. Handler frames are created by error handlers (see 3.3 The stack in the debugger), and are normally not shown by the debugger. However if *print-handler-frames*
is set to t
then the handler frames are displayed.
*print-handler-frames*
can be set to value by:
(set-debugger-options :handler value)
*print-handler-frames*
is an extension to Common Lisp.
USER 162 > (setq lw:*print-handler-frames* t)
T USER 163 > (defun test (n) (handler-case (fn-to-use n) (type-error () (format t "~%Type error~%") 0)))
TEST USER 164 > (test #C(1 1))
Error: Undefined function: FN-TO-USE, with args (#C(1 1))
1 (continue) Call FN-TO-USE again 2 (abort) return to top loop level 0.
Type :c followed by a number to proceed
USER 165 : 1 > :b 10 Catch frame: (NIL) Catch frame: #:|block-catcher-1854| Call to *%UNDEFINED-FUNCTION-FUNCTION : Call to %EVAL : Call to RETURN-FROM : Call to %EVAL : Call to EVAL-AS-PROGN : Handler frame: ((TYPE-ERROR %LEXICAL-CLOSURE% (LAMBDA (CONDITIONS::TEMP) (GO #:|lambda-633|)) ((#:|lambda-632|) (N . #)) NIL ((#:|lambda-631|) (TEST)) ((#:|lambda-633| # #)))) Catch frame: "<* Catch All Object *>" Call to LET :
LispWorks® User Guide and Reference Manual - 01 Dec 2021 19:30:32