Don't use gdb_py_long_from_ulongest
authorTom Tromey <tromey@adacore.com>
Tue, 15 Sep 2020 17:08:56 +0000 (11:08 -0600)
committerTom Tromey <tromey@adacore.com>
Tue, 15 Sep 2020 17:08:56 +0000 (11:08 -0600)
commitd1cab9876d72d867b2de82688f5f5a2a4b655edb
treee427c640bc2fe1ebd2e57fd16408901df0161516
parent4bde49dc81c5c16189af70b9a144dbb5651994f1
Don't use gdb_py_long_from_ulongest

Remove the gdb_py_long_from_ulongest defines and change the Python
layer to prefer gdb_py_object_from_ulongest.  While writing this I
noticed that the error handling in archpy_disassemble was incorrect --
it could call PyDict_SetItemString with a NULL value.  This patch also
fixes this bug.

gdb/ChangeLog
2020-09-15  Tom Tromey  <tromey@adacore.com>

* python/python-internal.h (gdb_py_long_from_ulongest): Remove
defines.
* python/py-value.c (valpy_long): Use
gdb_py_object_from_ulongest.
* python/py-symtab.c (salpy_get_pc): Use
gdb_py_object_from_ulongest.
(salpy_get_last): Likewise.
* python/py-record-btrace.c (recpy_bt_insn_pc): Use
gdb_py_object_from_ulongest.
* python/py-lazy-string.c (stpy_get_address): Use
gdb_py_object_from_ulongest.
* python/py-frame.c (frapy_pc): Use gdb_py_object_from_ulongest.
* python/py-arch.c (archpy_disassemble): Use
gdb_py_object_from_ulongest and gdb_py_object_from_longest.  Fix
error handling.
gdb/ChangeLog
gdb/python/py-arch.c
gdb/python/py-frame.c
gdb/python/py-lazy-string.c
gdb/python/py-record-btrace.c
gdb/python/py-symtab.c
gdb/python/py-value.c
gdb/python/python-internal.h