NextPrevUpTopContentsIndex

*print-binding-frames*

Variable
Summary

Controls whether binding frames are printed in debugger output.

Package

dbg

Initial Value

nil

Description

This variable is used by the debugger when it displays the stack frames. Binding frames are formed when special variables are bound, but are normally not shown by the debugger. However if the value of dbg:*print-binding-frames* is true then the binding frames are shown.

Example
CL-USER 16 > (defun print-to-length (object length)
              (let ((*print-length* length))
                (prinnt object)))
PRINT-TO-LENGTH
 
CL-USER 17 > (setf dbg:*print-binding-frames* t)
T
 
CL-USER 18 > (print-to-length '(x y z) 2)
 
Error: Undefined operator PRINNT in form (PRINNT OBJECT).
  1 (continue) Try invoking PRINNT again.
  2 Return some values from the form (PRINNT OBJECT).
  3 Try invoking something other than PRINNT with the same arguments.
  4 Set the symbol-function of PRINNT to another function.
  5 Set the macro-function of PRINNT to another function.
  6 (abort) Return to level 0.
  7 Return to top loop level 0.
 
Type :b for backtrace, :c <option number> to proceed,  or :? for other options
 
CL-USER 19 : 1 > :n print-to-length
Interpreted call to PRINT-TO-LENGTH
 
CL-USER 20 : 1 > :b :verbose 5
Interpreted call to PRINT-TO-LENGTH:
  OBJECT         : (X Y Z)
  LENGTH         : 2
  *PRINT-LENGTH* : 2
 
Block environment contour:
Tag environment contour:
Function environment contour
Variable environment contour: ()
 
Tag environment contour:
Block environment contour:
Function environment contour
Variable environment contour: ()
 
Call to EVAL (offset 184)
  EXP : (PRINT-TO-LENGTH (QUOTE (X Y Z)) 2)
 
Binding frame:
  SYSTEM::*TOP-LOOP-ACTIVE*             : -1
  COMPILER::*IN-COMPILER-HANDLER*       : #<Unbound Marker>
  *                                     : NIL
  **                                    : NIL
  ***                                   : NIL
  -                                     : NIL
  +                                     : NIL
  ++                                    : NIL
  +++                                   : NIL
  ///                                   : NIL
  //                                    : NIL
  /                                     : NIL
  SYSTEM::*TOP-LOOP-HOOK*               : NIL
  SYSTEM::*USER-COMMANDS*               : NIL
  SYSTEM::*IN-TOP-LEVEL-READ-A-COMMAND* : NIL
 
 
 
CL-USER 21 : 1 > 
Notes

*print-binding-frames* is an extension to Common Lisp.


LispWorks Reference Manual - 20 Jul 2006

NextPrevUpTopContentsIndex