SB-DEBUG
SB-DEBUG
properties
ID: SB-DEBUG
LOCK: T
sorta public: Eventually this should become the debugger interface, with basic stuff like BACKTRACE and ARG. For now, the actual supported interface is still mixed indiscriminately with low-level internal implementation stuff like SB-DEBUG:*STACK-TOP-HINT* and unsupported stuff like SB-DEBUG::*TRACED-FUNS*.
- dependencies
- dependents
- STD-USER
- [BROKEN LINK: PACKY-USER]
- SKEL-USER
- [BROKEN LINK: MPK-USER]
- [BROKEN LINK: KRYPT-USER]
- CORE
- COMMON-LISP-USER
- [BROKEN LINK: HOMER-USER]
*STACK-TOP-HINT*  global var
properties
ID: SB-DEBUG:*STACK-TOP-HINT*
ALLOC: HEAP IMMOBILE
*STACK-TOP-HINT* names a special variable: Declared always-bound. Value: NIL
- Bound by
- SB-ACLREPL::DEBUG-LOOP
- (CALL-WITH-DEBUGGER-HOOK IN /home/ellis/src/core/lib/swank/sbcl.lisp)
- (CALL-WITH-DEBUGGING-ENVIRONMENT IN /home/ellis/src/core/lib/swank/sbcl.lisp)
- Referenced by
- SB-ACLREPL::DEBUG-LOOP
- (CALL-WITH-DEBUGGING-ENVIRONMENT IN /home/ellis/src/core/lib/swank/sbcl.lisp)
definitions
- SYS:SRC;CODE;EARLY-EXTENSIONS.LISP
BACKTRACE  compiled function
properties
ID: SB-DEBUG:BACKTRACE
ALLOC: HEAP IMMOBILE
BACKTRACE names a compiled function: Lambda-list: (&OPTIONAL (COUNT *BACKTRACE-FRAME-COUNT*) (STREAM *DEBUG-IO*)) Derived type: (FUNCTION (&OPTIONAL T T) *) Source file: SYS:SRC;CODE;DEBUG.LISP
definitions
- SYS:SRC;CODE;DEBUG.LISP
*TRACE-ENCAPSULATE-DEFAULT*  var
properties
ID: SB-DEBUG:*TRACE-ENCAPSULATE-DEFAULT*
ALLOC: HEAP IMMOBILE
*TRACE-ENCAPSULATE-DEFAULT* names a special variable:
Value: T
Documentation:
The default value for the :ENCAPSULATE option to TRACE.
definitions
- SYS:SRC;CODE;NTRACE.LISP
ARG  compiled function
properties
ID: SB-DEBUG:ARG
ALLOC: HEAP IMMOBILE
ARG names a compiled function:
Lambda-list: (N)
Derived type: (FUNCTION (T)
(VALUES T &OPTIONAL
(OR (INTEGER 4 4) (INTEGER 8 8) (INTEGER 16 16)
(INTEGER 32 32) (INTEGER 64 64))))
Documentation:
Return the N'th argument's value if possible. Argument zero is the first
argument in a frame's default printed representation. Count keyword/value
pairs as separate arguments.
Source file: SYS:SRC;CODE;DEBUG.LISP
definitions
- SYS:SRC;CODE;DEBUG.LISP
*IN-THE-DEBUGGER*  global var
properties
ID: SB-DEBUG:*IN-THE-DEBUGGER*
ALLOC: HEAP IMMOBILE
*IN-THE-DEBUGGER* names a special variable:
Declared always-bound.
Value: NIL
Documentation:
This is T while in the debugger.
definitions
- SYS:SRC;CODE;DEBUG.LISP
*DEBUG-HELP-STRING*  global var
properties
ID: SB-DEBUG:*DEBUG-HELP-STRING*
ALLOC: HEAP IMMOBILE
*DEBUG-HELP-STRING* names a global variable:
Declared always-bound.
Value: #<(SIMPLE-BASE-STRING
3445) The debug prompt is square brackets, with number(s)indicating the current
control stack level and, if you've entered the debugger recursively, how
deeply recursed you are.
Any command -- includin... {11FF3C981F}>
definitions
- SYS:SRC;CODE;DEBUG.LISP
PRINT-BACKTRACE  compiled function
properties
ID: SB-DEBUG:PRINT-BACKTRACE
ALLOC: HEAP IMMOBILE
PRINT-BACKTRACE names a compiled function:
Lambda-list: (&KEY (STREAM *DEBUG-IO*) (START 0) (FROM DEBUGGER-FRAME)
(COUNT *BACKTRACE-FRAME-COUNT*) (PRINT-THREAD T)
(PRINT-PC *BACKTRACE-PRINT-PC*)
(ARGUMENT-LIMIT *DEFAULT-ARGUMENT-LIMIT*)
(PRINT-FRAME-SOURCE NIL)
(METHOD-FRAME-STYLE *METHOD-FRAME-STYLE*)
(EMERGENCY-BEST-EFFORT (> *DEBUG-COMMAND-LEVEL* 1)))
Derived type: (FUNCTION
(&KEY (:STREAM T) (:START T) (:FROM T) (:COUNT T)
(:PRINT-THREAD T) (:PRINT-PC T) (:ARGUMENT-LIMIT T)
(:PRINT-FRAME-SOURCE T) (:METHOD-FRAME-STYLE T)
(:EMERGENCY-BEST-EFFORT T))
*)
Documentation:
Print a listing of the call stack to STREAM, defaulting to *DEBUG-IO*.
COUNT is the number of frames to backtrace, defaulting to
*BACKTRACE-FRAME-COUNT*.
START is the number of the frame the backtrace should start from.
FROM specifies the frame relative to which the frames are numbered.Possible
values are an explicit SB-DI:FRAME object, and the
keywords :CURRENT-FRAME, :INTERRUPTED-FRAME, and :DEBUGGER-FRAME. Default
is :DEBUGGER-FRAME.
:CURRENT-FRAME
specifies the caller of PRINT-BACKTRACE.
:INTERRUPTED-FRAME
specifies the first interrupted frame on the stack (typically the frame
where the error occured, as opposed to error handling frames) if any,
otherwise behaving as :CURRENT-FRAME.
:DEBUGGER-FRAME
specifies the currently debugged frame when inside the debugger, and
behaves as :INTERRUPTED-FRAME outside the debugger.
If PRINT-THREAD is true (default), backtrace is preceded by printing the
thread object the backtrace is from.
If PRINT-FRAME-SOURCE is true (default is false), each frame is followed by
printing the currently executing source form in the function responsiblefor
that frame, when available. Requires the function to have been compiled at
DEBUG 2 or higher. If PRINT-FRAME-SOURCE is :ALWAYS, it also reports "no
source available" for frames for which were compiled at lower debugsettings.
METHOD-FRAME-STYLE (defaulting to *METHOD-FRAME-STYLE*), determines howframes
corresponding to method functions are printed. Possible values
are :MINIMAL, :NORMAL, and :FULL. See *METHOD-FRAME-STYLE* for more
information.
If EMERGENCY-BEST-EFFORT is true then try to print as much information as
possible while navigating and ignoring possible errors.
Source file: SYS:SRC;CODE;DEBUG.LISP
- Called by
- SB-ACLREPL::BT-CMD
- UIOP/IMAGE:RAW-PRINT-BACKTRACE
- FATAL!
- ERROR!
- STD/CORE::HANDLE-SERIOUS-CONDITION
- GET-BACKTRACE
definitions
- SYS:SRC;CODE;DEBUG.LISP
MAP-BACKTRACE  compiled function
properties
ID: SB-DEBUG:MAP-BACKTRACE
ALLOC: HEAP IMMOBILE
MAP-BACKTRACE names a compiled function:
Lambda-list: (FUNCTION &KEY (START 0) (FROM DEBUGGER-FRAME)
(COUNT *BACKTRACE-FRAME-COUNT*))
Dynamic-extent arguments: positional=(0)
Derived type: (FUNCTION (T &KEY (:START T) (:FROM T) (:COUNT T))
(VALUES T &OPTIONAL))
Documentation:
Calls the designated FUNCTION with each frame on the call stack.
Returns the last value returned by FUNCTION.
COUNT is the number of frames to backtrace, defaulting to
*BACKTRACE-FRAME-COUNT*.
START is the number of the frame the backtrace should start from.
FROM specifies the frame relative to which the frames are numbered.Possible
values are an explicit SB-DI:FRAME object, and the
keywords :CURRENT-FRAME, :INTERRUPTED-FRAME, and :DEBUGGER-FRAME. Default
is :DEBUGGER-FRAME.
:CURRENT-FRAME
specifies the caller of MAP-BACKTRACE.
:INTERRUPTED-FRAME
specifies the first interrupted frame on the stack (typically the frame
where the error occurred, as opposed to error handling frames) if any,
otherwise behaving as :CURRENT-FRAME.
:DEBUGGER-FRAME
specifies the currently debugged frame when inside the debugger, and
behaves as :INTERRUPTED-FRAME outside the debugger.
Source file: SYS:SRC;CODE;DEBUG.LISP
definitions
- SYS:SRC;CODE;DEBUG.LISP
*TRACE-REPORT-DEFAULT*  var
properties
ID: SB-DEBUG:*TRACE-REPORT-DEFAULT*
ALLOC: HEAP IMMOBILE
*TRACE-REPORT-DEFAULT* names a special variable:
Value: TRACE
Documentation:
The default value for the :REPORT option to TRACE.
definitions
- SYS:SRC;CODE;NTRACE.LISP
FRAME-HAS-DEBUG-TAG-P  compiled function
properties
ID: SB-DEBUG:FRAME-HAS-DEBUG-TAG-P
ALLOC: HEAP IMMOBILE
FRAME-HAS-DEBUG-TAG-P names a compiled function:
Lambda-list: (FRAME)
Derived type: (FUNCTION (T)
(VALUES T &OPTIONAL
(OR (INTEGER 4 4) (INTEGER 8 8) (INTEGER 16 16)
(INTEGER 32 32) (INTEGER 64 64))))
Source file: SYS:SRC;CODE;DEBUG.LISP
- Called by
- (RESTART-FRAME IN /home/ellis/src/core/lib/swank/sbcl.lisp)
- (RETURN-FROM-FRAME IN /home/ellis/src/core/lib/swank/sbcl.lisp)
- (FRAME-RESTARTABLE-P IN /home/ellis/src/core/lib/swank/sbcl.lisp)
definitions
- SYS:SRC;CODE;DEBUG.LISP
LIST-BACKTRACE  compiled function
properties
ID: SB-DEBUG:LIST-BACKTRACE
ALLOC: HEAP IMMOBILE
LIST-BACKTRACE names a compiled function:
Lambda-list: (&KEY (COUNT *BACKTRACE-FRAME-COUNT*)
(ARGUMENT-LIMIT *DEFAULT-ARGUMENT-LIMIT*) (START 0)
(FROM DEBUGGER-FRAME) (METHOD-FRAME-STYLE *METHOD-FRAME-STYLE*))
Derived type: (FUNCTION
(&KEY (:COUNT T) (:ARGUMENT-LIMIT T) (:START T) (:FROM T)
(:METHOD-FRAME-STYLE T))
(VALUES LIST &OPTIONAL))
Documentation:
Returns a list describing the call stack. Each frame is represented
by a sublist:
(<name> ...args...)
where the name describes the function responsible for the frame. The name
might not be bound to the actual function object. Unavailable arguments are
represented by dummy objects that print as #<unavailable argument>. Objects
with dynamic-extent allocation by the current thread are represented by
substitutes to avoid references to them from leaking outside their legal
extent.
COUNT is the number of frames to backtrace, defaulting to
*BACKTRACE-FRAME-COUNT*.
START is the number of the frame the backtrace should start from.
FROM specifies the frame relative to which the frames are numbered.Possible
values are an explicit SB-DI:FRAME object, and the
keywords :CURRENT-FRAME, :INTERRUPTED-FRAME, and :DEBUGGER-FRAME. Default
is :DEBUGGER-FRAME.
:CURRENT-FRAME
specifies the caller of LIST-BACKTRACE.
:INTERRUPTED-FRAME
specifies the first interrupted frame on the stack (typically the frame
where the error occured, as opposed to error handling frames) if any,
otherwise behaving as :CURRENT-FRAME.
:DEBUGGER-FRAME
specifies the currently debugged frame when inside the debugger, and
behaves as :INTERRUPTED-FRAME outside the debugger.
METHOD-FRAME-STYLE (defaulting to *METHOD-FRAME-STYLE*), determines howframes
corresponding to method functions are printed. Possible values
are :MINIMAL, :NORMAL, and :FULL. See *METHOD-FRAME-STYLE* for more
information.
Source file: SYS:SRC;CODE;DEBUG.LISP
- Called by
- (HANDLE-REQUEST (HTTP-SERVICE HTTP-SERVICE-REQUEST))
definitions
- SYS:SRC;CODE;DEBUG.LISP
BACKTRACE-AS-LIST  compiled function
properties
ID: SB-DEBUG:BACKTRACE-AS-LIST
ALLOC: HEAP IMMOBILE
BACKTRACE-AS-LIST names a compiled function: Lambda-list: (&OPTIONAL (COUNT *BACKTRACE-FRAME-COUNT*)) Derived type: (FUNCTION (&OPTIONAL T) *) Source file: SYS:SRC;CODE;DEBUG.LISP
definitions
- SYS:SRC;CODE;DEBUG.LISP
*FLUSH-DEBUG-ERRORS*  var
properties
ID: SB-DEBUG:*FLUSH-DEBUG-ERRORS*
ALLOC: HEAP IMMOBILE
*FLUSH-DEBUG-ERRORS* names a special variable:
Value: NIL
Documentation:
When set, avoid calling INVOKE-DEBUGGER recursively when errors occur while
executing in the debugger.
- Referenced by
- SB-ACLREPL::DEBUG-LOOP
definitions
- SYS:SRC;CODE;DEBUG.LISP
*TRACE-INDENTATION-STEP*  var
properties
ID: SB-DEBUG:*TRACE-INDENTATION-STEP*
ALLOC: HEAP IMMOBILE
*TRACE-INDENTATION-STEP* names a special variable:
Value: 2
Documentation:
The increase in trace indentation at each call level.
definitions
- SYS:SRC;CODE;NTRACE.LISP
*DEBUG-CONDITION*
properties
ID: SB-DEBUG:*DEBUG-CONDITION*
ALLOC: HEAP IMMOBILE
*DEBUG-CONDITION* names a special variable: Currently unbound.
definitions
- SYS:SRC;CODE;DEBUG.LISP
VAR  compiled function
properties
ID: SB-DEBUG:VAR
ALLOC: HEAP IMMOBILE
VAR names a compiled function:
Lambda-list: (NAME &OPTIONAL (ID 0 ID-SUPPLIED))
Derived type: (FUNCTION (T &OPTIONAL T) (VALUES T &OPTIONAL))
Documentation:
Return a variable's value if possible. NAME is a simple-string or symbol.
If it is a simple-string, it is an initial substring of the
variable's name. If name is a symbol, it has the same name and
package as the variable whose value this function returns. If the
symbol is uninterned, then the variable has the same name as the
symbol, but it has no package.
If name is the initial substring of variables with different names,
then this returns no values after displaying the ambiguous names.
If name determines multiple variables with the same name, then you
must use the optional ID argument to specify which one you want. If
you left ID unspecified, then this returns no values after
displaying the distinguishing id values.
The result of this function is limited to the availability of
variable information. This is SETFable.
Source file: SYS:SRC;CODE;DEBUG.LISP
(SETF VAR) names a compiled function:
Lambda-list: (VALUE NAME &OPTIONAL (ID 0 ID-SUPPLIED))
Derived type: (FUNCTION (T T &OPTIONAL T) (VALUES T &OPTIONAL))
Source file: SYS:SRC;CODE;DEBUG.LISP
definitions
- SYS:SRC;CODE;DEBUG.LISP
INTERNAL-DEBUG  compiled function
properties
ID: SB-DEBUG:INTERNAL-DEBUG
ALLOC: HEAP IMMOBILE
INTERNAL-DEBUG names a compiled function: Lambda-list: () Derived type: (FUNCTION NIL *) Source file: SYS:SRC;CODE;DEBUG.LISP
definitions
- SYS:SRC;CODE;DEBUG.LISP
UNWIND-TO-FRAME-AND-CALL  compiled vop function
properties
ID: SB-DEBUG:UNWIND-TO-FRAME-AND-CALL
ALLOC: HEAP IMMOBILE
UNWIND-TO-FRAME-AND-CALL names a compiled function: Lambda-list: (FRAME THUNK) Derived type: (FUNCTION (T T) (VALUES &OPTIONAL)) Source file: SYS:SRC;CODE;DEBUG.LISP
- Called by
- (RESTART-FRAME IN /home/ellis/src/core/lib/swank/sbcl.lisp)
- (RETURN-FROM-FRAME IN /home/ellis/src/core/lib/swank/sbcl.lisp)
definitions
- SYS:SRC;CODE;DEBUG.LISP
*DEBUG-READTABLE*  var
properties
ID: SB-DEBUG:*DEBUG-READTABLE*
ALLOC: HEAP IMMOBILE
*DEBUG-READTABLE* names a special variable:
Value: #<READTABLE {1200055FA3}>
Documentation:
*READTABLE* for the debugger
definitions
- SYS:SRC;CODE;DEBUG.LISP
BACKTRACE-ALL-THREADS  compiled function
properties
ID: SB-DEBUG:BACKTRACE-ALL-THREADS
ALLOC: HEAP IMMOBILE
BACKTRACE-ALL-THREADS names a compiled function: Lambda-list: () Derived type: (FUNCTION NIL (VALUES CONS &OPTIONAL)) Source file: SYS:SRC;CODE;DEBUG.LISP
definitions
- SYS:SRC;CODE;DEBUG.LISP
*METHOD-FRAME-STYLE*  var
properties
ID: SB-DEBUG:*METHOD-FRAME-STYLE*
ALLOC: HEAP IMMOBILE
*METHOD-FRAME-STYLE* names a special variable:
Declared type: (MEMBER :FULL :NORMAL :MINIMAL)
Value: :NORMAL
Documentation:
Determines how frames corresponding to method functions are represented in
backtraces. Possible values are :MINIMAL, :NORMAL, and :FULL.
:MINIMAL represents them as
(<gf-name> ...args...)
if all arguments are available, and only a single method is applicableto
the arguments -- otherwise behaves as :NORMAL.
:NORMAL represents them as
((:method <gf-name> [<qualifier>*] (<specializer>*)) ...args...)
The frame is then followed by either [fast-method] or [slow-method],
designating the kind of method function. (See below.)
:FULL represents them using the actual funcallable method function name:
((sb-pcl:fast-method <gf-name> [<qualifier>*](<specializer>*)) ...args...)
or
((sb-pcl:slow-method <gf-name> [<qualifier>*](<specializer>*)) ...args...)
In the this case arguments may include values internal to SBCL's method
dispatch machinery.
- Bound by
- (RESTART-FRAME IN /home/ellis/src/core/lib/swank/sbcl.lisp)
definitions
- SYS:SRC;CODE;DEBUG.LISP
*DEBUG-BEGINNER-HELP-P*  var
properties
ID: SB-DEBUG:*DEBUG-BEGINNER-HELP-P*
ALLOC: HEAP IMMOBILE
*DEBUG-BEGINNER-HELP-P* names a special variable:
Value: T
Documentation:
Should the debugger display beginner-oriented help messages?
definitions
- SYS:SRC;CODE;DEBUG.LISP
*MAX-TRACE-INDENTATION*  var
properties
ID: SB-DEBUG:*MAX-TRACE-INDENTATION*
ALLOC: HEAP IMMOBILE
*MAX-TRACE-INDENTATION* names a special variable:
Value: 40
Documentation:
If the trace indentation exceeds this value, then indentation restarts
at 0.
definitions
- SYS:SRC;CODE;NTRACE.LISP
*BACKTRACE-FRAME-COUNT*  var
properties
ID: SB-DEBUG:*BACKTRACE-FRAME-COUNT*
ALLOC: HEAP IMMOBILE
*BACKTRACE-FRAME-COUNT* names a special variable:
Declared type: UNSIGNED-BYTE
Value: 1000
Documentation:
Default number of frames to backtrace. Defaults to 1000.
definitions
- SYS:SRC;CODE;DEBUG.LISP