aboutsummaryrefslogtreecommitdiff
path: root/gdb/python/py-function.c
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2017-02-09 13:16:36 -0700
committerTom Tromey <tom@tromey.com>2017-02-10 12:24:31 -0700
commit7780f18678aeb553778633aeb50f41694f55bf27 (patch)
tree2a29556dd1807649261d2a013393a279da421a5c /gdb/python/py-function.c
parentd4b0bb186e204f77ed70bc719d16c6ca302094fd (diff)
downloadgdb-7780f18678aeb553778633aeb50f41694f55bf27.zip
gdb-7780f18678aeb553778633aeb50f41694f55bf27.tar.gz
gdb-7780f18678aeb553778633aeb50f41694f55bf27.tar.bz2
Turn gdbpy_ref into a template
This turns gdbpy_ref into a template class, so that it can be used to wrap subclasses of PyObject. The default argument remains PyObject; and this necessitated renaming uses of "gdbpy_ref" to "gdbpy_ref<>". gdb/ChangeLog 2017-02-10 Tom Tromey <tom@tromey.com> * python/py-ref.h (gdbpy_ref_policy): Now a template. (gdbpy_ref): Now a template; allow subclasses of PyObject to be used. * python/py-arch.c, python/py-bpevent.c, python/py-breakpoint.c, python/py-cmd.c, python/py-continueevent.c, python/py-event.c, python/py-exitedevent.c, python/py-finishbreakpoint.c, python/py-framefilter.c, python/py-function.c, python/py-inferior.c, python/py-infevents.c, python/py-linetable.c, python/py-newobjfileevent.c, python/py-param.c, python/py-prettyprint.c, python/py-ref.h, python/py-signalevent.c, python/py-stopevent.c, python/py-symbol.c, python/py-threadevent.c, python/py-type.c, python/py-unwind.c, python/py-utils.c, python/py-value.c, python/py-varobj.c, python/py-xmethods.c, python/python.c, varobj.c: Change gdbpy_ref to gdbpy_ref<>.
Diffstat (limited to 'gdb/python/py-function.c')
-rw-r--r--gdb/python/py-function.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/gdb/python/py-function.c b/gdb/python/py-function.c
index 6762a6d..0b2a934 100644
--- a/gdb/python/py-function.c
+++ b/gdb/python/py-function.c
@@ -38,14 +38,14 @@ static PyObject *
convert_values_to_python (int argc, struct value **argv)
{
int i;
- gdbpy_ref result (PyTuple_New (argc));
+ gdbpy_ref<> result (PyTuple_New (argc));
if (result == NULL)
return NULL;
for (i = 0; i < argc; ++i)
{
- gdbpy_ref elt (value_to_value_object (argv[i]));
+ gdbpy_ref<> elt (value_to_value_object (argv[i]));
if (elt == NULL)
return NULL;
PyTuple_SetItem (result.get (), i, elt.release ());
@@ -63,8 +63,8 @@ fnpy_call (struct gdbarch *gdbarch, const struct language_defn *language,
be destroyed. */
gdbpy_enter enter_py (gdbarch, language);
struct value *value;
- gdbpy_ref result;
- gdbpy_ref args (convert_values_to_python (argc, argv));
+ gdbpy_ref<> result;
+ gdbpy_ref<> args (convert_values_to_python (argc, argv));
/* convert_values_to_python can return NULL on error. If we
encounter this, do not call the function, but allow the Python ->
@@ -74,8 +74,8 @@ fnpy_call (struct gdbarch *gdbarch, const struct language_defn *language,
if (args != NULL)
{
- gdbpy_ref callable (PyObject_GetAttrString ((PyObject *) cookie,
- "invoke"));
+ gdbpy_ref<> callable (PyObject_GetAttrString ((PyObject *) cookie,
+ "invoke"));
if (callable == NULL)
error (_("No method named 'invoke' in object."));
@@ -159,7 +159,7 @@ fnpy_init (PyObject *self, PyObject *args, PyObject *kwds)
if (PyObject_HasAttrString (self, "__doc__"))
{
- gdbpy_ref ds_obj (PyObject_GetAttrString (self, "__doc__"));
+ gdbpy_ref<> ds_obj (PyObject_GetAttrString (self, "__doc__"));
if (ds_obj != NULL)
{
if (gdbpy_is_string (ds_obj.get ()))