mirror of https://github.com/python/cpython
bpo-15817: Expose command documentation to gdb help (GH-6384)
Original patch by Alexander Belopolsky. Patch by Skip Montanaro.
This commit is contained in:
parent
091e95e900
commit
7286dbd8b2
36
Misc/gdbinit
36
Misc/gdbinit
|
@ -14,9 +14,11 @@
|
|||
# with embedded macros that you may find superior to what is in here.
|
||||
# See Tools/gdb/libpython.py and http://bugs.python.org/issue8032.
|
||||
|
||||
# Prints a representation of the object to stderr, along with the
|
||||
# number of reference counts it current has and the hex address the
|
||||
# object is allocated at. The argument must be a PyObject*
|
||||
document pyo
|
||||
Prints a representation of the object to stderr, along with the
|
||||
number of reference counts it currently has and the hex address the
|
||||
object is allocated at. The argument must be a PyObject*
|
||||
end
|
||||
define pyo
|
||||
# side effect of calling _PyObject_Dump is to dump the object's
|
||||
# info - assigning just prevents gdb from printing the
|
||||
|
@ -24,14 +26,18 @@ define pyo
|
|||
set $_unused_void = _PyObject_Dump($arg0)
|
||||
end
|
||||
|
||||
# Prints a representation of the object to stderr, along with the
|
||||
# number of reference counts it current has and the hex address the
|
||||
# object is allocated at. The argument must be a PyGC_Head*
|
||||
document pyg
|
||||
Prints a representation of the object to stderr, along with the
|
||||
number of reference counts it currently has and the hex address the
|
||||
object is allocated at. The argument must be a PyGC_Head*
|
||||
end
|
||||
define pyg
|
||||
print _PyGC_Dump($arg0)
|
||||
end
|
||||
|
||||
# print the local variables of the current frame
|
||||
document pylocals
|
||||
Print the local variables of the current frame.
|
||||
end
|
||||
define pylocals
|
||||
set $_i = 0
|
||||
while $_i < f->f_code->co_nlocals
|
||||
|
@ -69,7 +75,9 @@ define lineno
|
|||
printf "%d", $__li
|
||||
end
|
||||
|
||||
# print the current frame - verbose
|
||||
document pyframev
|
||||
Print the current frame - verbose
|
||||
end
|
||||
define pyframev
|
||||
pyframe
|
||||
pylocals
|
||||
|
@ -126,7 +134,9 @@ end
|
|||
# the interpreter you may will have to change the functions you compare with
|
||||
# $pc.
|
||||
|
||||
# print the entire Python call stack
|
||||
document pystack
|
||||
Print the entire Python call stack
|
||||
end
|
||||
define pystack
|
||||
while $pc < Py_Main || $pc > Py_GetArgcArgv
|
||||
if $pc > PyEval_EvalFrameEx && $pc < PyEval_EvalCodeEx
|
||||
|
@ -137,7 +147,9 @@ define pystack
|
|||
select-frame 0
|
||||
end
|
||||
|
||||
# print the entire Python call stack - verbose mode
|
||||
document pystackv
|
||||
Print the entire Python call stack - verbose mode
|
||||
end
|
||||
define pystackv
|
||||
while $pc < Py_Main || $pc > Py_GetArgcArgv
|
||||
if $pc > PyEval_EvalFrameEx && $pc < PyEval_EvalCodeEx
|
||||
|
@ -148,7 +160,9 @@ define pystackv
|
|||
select-frame 0
|
||||
end
|
||||
|
||||
# generally useful macro to print a Unicode string
|
||||
document pu
|
||||
Generally useful macro to print a Unicode string
|
||||
end
|
||||
def pu
|
||||
set $uni = $arg0
|
||||
set $i = 0
|
||||
|
|
Loading…
Reference in New Issue