[Python-Dev] GDB macros in Misc/gdbinit are broken

Alexander Belopolsky alexander.belopolsky at gmail.com
Tue Feb 28 14:38:32 EST 2017


On Tue, Feb 28, 2017 at 3:33 AM, Victor Stinner <victor.stinner at gmail.com>
wrote:

>
> Alexander, Skip: Oh, which kind of issues do you have with
> python-gdb.py? It doesn't work? You are unable to dump some data?


First, I had to rename python-gdb.py to python3.6-gdb.py to make it load.
Then running backtrace gave me a bunch of error messages:


(gdb) bt
#0  builtin_hex (module=<module at remote 0x7ffff1a69c58>, number=0) at
Python/bltinmodule.c:1436
#1  0x00007ffff7a9304c in _PyCFunction_FastCallDict (func_obj=<built-in
method hex of module object at remote 0x7ffff1a69c58>, args=0x662cf8,
nargs=1, kwargs=0x0)
    at Objects/methodobject.c:209
#2  0x00007ffff7a9344b in _PyCFunction_FastCallKeywords (func=<built-in
method hex of module object at remote 0x7ffff1a69c58>, stack=0x662cf8,
nargs=1, kwnames=0x0)
    at Objects/methodobject.c:295
#3  0x00007ffff7bac6d9 in call_function (pp_stack=0x7fffffffb6d8, oparg=1,
kwnames=0x0) at Python/ceval.c:4788
#4  0x00007ffff7ba3e6c in _PyEval_EvalFrameDefault (f=Frame 0x662b68, for
file r.py, line 2, in <module> (), throwflag=0) at Python/ceval.c:3275
#5  0x00007ffff7b8cc67 in PyEval_EvalFrameEx (f=Frame 0x662b68, for file
r.py, line 2, in <module> (), throwflag=0) at Python/ceval.c:718
#6  0x00007ffff7ba9745 in _PyEval_EvalCodeWithName (_co=<code at remote
0x7ffff1983f40>, globals=Traceback (most recent call last):
  File "/home/a/.virtualenvs/3.6g/bin/python3.6-gdb.py", line 1358, in
to_string
    return pyop.get_truncated_repr(MAX_OUTPUT_LEN)
  File "/home/a/.virtualenvs/3.6g/bin/python3.6-gdb.py", line 243, in
get_truncated_repr
    self.write_repr(out, set())
  File "/home/a/.virtualenvs/3.6g/bin/python3.6-gdb.py", line 702, in
write_repr
    for pyop_key, pyop_value in self.iteritems():
  File "/home/a/.virtualenvs/3.6g/bin/python3.6-gdb.py", line 669, in
iteritems
    entries, nentries = self._get_entries(keys)
  File "/home/a/.virtualenvs/3.6g/bin/python3.6-gdb.py", line 717, in
_get_entries
    except gdb.error:
AttributeError: 'module' object has no attribute 'error'
...

It looks like there is a mismatch between python-gdb.py  and the gdb module
that I assume comes with gdb.

$ gdb --version
GNU gdb (GDB) Red Hat Enterprise Linux (7.2-90.el6)
..
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20170228/5b60c29e/attachment.html>


More information about the Python-Dev mailing list