All Manuals > LispWorks® User Guide and Reference Manual > 34 The DBG Package

*print-handler-frames* Variable

Summary

Controls whether handler frames are printed in debugger output.

Package

dbg

Initial Value

nil

Description

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.

Notes
  1. *print-handler-frames* can be set to value by:

    (set-debugger-options :handler value)
    
  2. *print-handler-frames* is an extension to Common Lisp.
Examples
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  :
See also

3.6 Debugger control variables
set-debugger-options


LispWorks® User Guide and Reference Manual - 01 Dec 2021 19:30:32