diff options
author | Tom Tromey <tom@tromey.com> | 2017-02-09 13:16:36 -0700 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2017-02-10 12:24:31 -0700 |
commit | 7780f18678aeb553778633aeb50f41694f55bf27 (patch) | |
tree | 2a29556dd1807649261d2a013393a279da421a5c /gdb/python/py-value.c | |
parent | d4b0bb186e204f77ed70bc719d16c6ca302094fd (diff) | |
download | binutils-7780f18678aeb553778633aeb50f41694f55bf27.zip binutils-7780f18678aeb553778633aeb50f41694f55bf27.tar.gz binutils-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-value.c')
-rw-r--r-- | gdb/python/py-value.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/gdb/python/py-value.c b/gdb/python/py-value.c index 8e4d06d..b9b012b 100644 --- a/gdb/python/py-value.c +++ b/gdb/python/py-value.c @@ -566,7 +566,7 @@ value_has_field (struct value *v, PyObject *field) { struct type *parent_type, *val_type; enum type_code type_code; - gdbpy_ref type_object (PyObject_GetAttrString (field, "parent_type")); + gdbpy_ref<> type_object (PyObject_GetAttrString (field, "parent_type")); int has_field = 0; if (type_object == NULL) @@ -612,7 +612,7 @@ value_has_field (struct value *v, PyObject *field) static int get_field_flag (PyObject *field, const char *flag_name) { - gdbpy_ref flag_object (PyObject_GetAttrString (field, flag_name)); + gdbpy_ref<> flag_object (PyObject_GetAttrString (field, flag_name)); if (flag_object == NULL) return -1; @@ -626,7 +626,7 @@ get_field_flag (PyObject *field, const char *flag_name) static struct type * get_field_type (PyObject *field) { - gdbpy_ref ftype_obj (PyObject_GetAttrString (field, "type")); + gdbpy_ref<> ftype_obj (PyObject_GetAttrString (field, "type")); struct type *ftype; if (ftype_obj == NULL) @@ -687,7 +687,7 @@ valpy_getitem (PyObject *self, PyObject *key) } else { - gdbpy_ref name_obj (PyObject_GetAttrString (key, "name")); + gdbpy_ref<> name_obj (PyObject_GetAttrString (key, "name")); if (name_obj == NULL) return NULL; @@ -708,7 +708,7 @@ valpy_getitem (PyObject *self, PyObject *key) return NULL; } - gdbpy_ref bitpos_obj (PyObject_GetAttrString (key, "bitpos")); + gdbpy_ref<> bitpos_obj (PyObject_GetAttrString (key, "bitpos")); if (bitpos_obj == NULL) return NULL; if (!gdb_py_int_as_long (bitpos_obj.get (), &bitpos)) @@ -1576,7 +1576,7 @@ convert_value_from_python (PyObject *obj) PyObject *etype, *evalue, *etraceback; PyErr_Fetch (&etype, &evalue, &etraceback); - gdbpy_ref zero (PyInt_FromLong (0)); + gdbpy_ref<> zero (PyInt_FromLong (0)); /* Check whether obj is positive. */ if (PyObject_RichCompareBool (obj, zero.get (), Py_GT) > 0) |