Remove value::copy call from gdbpy_get_varobj_pretty_printer

Message ID 20230804140022.4094630-1-tromey@adacore.com
State New
Headers
Series Remove value::copy call from gdbpy_get_varobj_pretty_printer |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_gdb_build--master-aarch64 success Testing passed
linaro-tcwg-bot/tcwg_gdb_build--master-arm success Testing passed
linaro-tcwg-bot/tcwg_gdb_check--master-arm success Testing passed
linaro-tcwg-bot/tcwg_gdb_check--master-aarch64 fail Testing failed

Commit Message

Tom Tromey Aug. 4, 2023, 2 p.m. UTC
  I noticed a call to value::copy in gdbpy_get_varobj_pretty_printer,
and I couldn't figure out why it was there.  I think maybe it came
from the time when value_to_value_object would release values from the
value chain -- but that was removed in commit f3d3bbbc.

This patch removes this call.  Regression tested on x86-64 Fedora 36.
---
 gdb/python/py-prettyprint.c | 9 ---------
 1 file changed, 9 deletions(-)
  

Comments

Tom Tromey Aug. 22, 2023, 4:43 p.m. UTC | #1
>>>>> "Tom" == Tom Tromey via Gdb-patches <gdb-patches@sourceware.org> writes:

Tom> I noticed a call to value::copy in gdbpy_get_varobj_pretty_printer,
Tom> and I couldn't figure out why it was there.  I think maybe it came
Tom> from the time when value_to_value_object would release values from the
Tom> value chain -- but that was removed in commit f3d3bbbc.

Tom> This patch removes this call.  Regression tested on x86-64 Fedora 36.

I'm checking this in.

Tom
  

Patch

diff --git a/gdb/python/py-prettyprint.c b/gdb/python/py-prettyprint.c
index 29ae0205ec7..cccc94e319b 100644
--- a/gdb/python/py-prettyprint.c
+++ b/gdb/python/py-prettyprint.c
@@ -661,15 +661,6 @@  apply_varobj_pretty_printer (PyObject *printer_obj,
 gdbpy_ref<>
 gdbpy_get_varobj_pretty_printer (struct value *value)
 {
-  try
-    {
-      value = value->copy ();
-    }
-  catch (const gdb_exception &except)
-    {
-      GDB_PY_HANDLE_EXCEPTION (except);
-    }
-
   gdbpy_ref<> val_obj (value_to_value_object (value));
   if (val_obj == NULL)
     return NULL;