diff options
author | Yao Qi <yao.qi@linaro.org> | 2016-11-11 08:38:31 +0000 |
---|---|---|
committer | Yao Qi <yao.qi@linaro.org> | 2016-11-11 08:38:31 +0000 |
commit | 668e167446b2777869f413841ec05aed59473d9f (patch) | |
tree | cbccde5d014f42cfa1f393b6134f6c268cf1c0fa /gdb/python | |
parent | 65408fa680538f997cdd4b6fb9d74f043a060801 (diff) | |
download | gdb-668e167446b2777869f413841ec05aed59473d9f.zip gdb-668e167446b2777869f413841ec05aed59473d9f.tar.gz gdb-668e167446b2777869f413841ec05aed59473d9f.tar.bz2 |
Remove apply_val_pretty_printer parameter valaddr
This patch removes the parameter valaddr of
extension_language_ops::apply_val_pretty_printer and remove const from
"struct value *val". valaddr can be got in each extension language's
implementation of apply_val_pretty_printer.
gdb:
2016-11-11 Yao Qi <yao.qi@linaro.org>
* cp-valprint.c (cp_print_value): Remove local base_valaddr.
* extension-priv.h (struct extension_language_ops)
<apply_val_pretty_printer>: Remove the second parameter.
Remove const from "struct value *". Callers updated.
* extension.c (apply_ext_lang_val_pretty_printer): Update
comments. Remove parameter valaddr. Remove const from
"struct value *".
* extension.h (apply_ext_lang_val_pretty_printer): Update
declaration.
* guile/guile-internal.h (gdbscm_apply_val_pretty_printer):
Update declaration.
* guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
Remove parameter valaddr. Remove const from "struct value *".
* python/py-prettyprint.c (gdbpy_apply_val_pretty_printer):
Likewise.
* python/python-internal.h (gdbpy_apply_val_pretty_printer):
Update declaration.
Diffstat (limited to 'gdb/python')
-rw-r--r-- | gdb/python/py-prettyprint.c | 9 | ||||
-rw-r--r-- | gdb/python/python-internal.h | 4 |
2 files changed, 6 insertions, 7 deletions
diff --git a/gdb/python/py-prettyprint.c b/gdb/python/py-prettyprint.c index 3c6a5af..cbc168d 100644 --- a/gdb/python/py-prettyprint.c +++ b/gdb/python/py-prettyprint.c @@ -699,10 +699,10 @@ print_children (PyObject *printer, const char *hint, enum ext_lang_rc gdbpy_apply_val_pretty_printer (const struct extension_language_defn *extlang, - struct type *type, const gdb_byte *valaddr, + struct type *type, LONGEST embedded_offset, CORE_ADDR address, struct ui_file *stream, int recurse, - const struct value *val, + struct value *val, const struct value_print_options *options, const struct language_defn *language) { @@ -714,6 +714,7 @@ gdbpy_apply_val_pretty_printer (const struct extension_language_defn *extlang, struct cleanup *cleanups; enum ext_lang_rc result = EXT_LANG_RC_NOP; enum string_repr_result print_result; + const gdb_byte *valaddr = value_contents_for_printing (val); /* No pretty-printer support for unavailable values. */ if (!value_bytes_available (val, embedded_offset, TYPE_LENGTH (type))) @@ -725,9 +726,7 @@ gdbpy_apply_val_pretty_printer (const struct extension_language_defn *extlang, cleanups = ensure_python_env (gdbarch, language); /* Instantiate the printer. */ - if (valaddr) - valaddr += embedded_offset; - value = value_from_contents_and_address (type, valaddr, + value = value_from_contents_and_address (type, valaddr + embedded_offset, address + embedded_offset); set_value_component_location (value, val); diff --git a/gdb/python/python-internal.h b/gdb/python/python-internal.h index f3213bb..5f0abf8 100644 --- a/gdb/python/python-internal.h +++ b/gdb/python/python-internal.h @@ -315,10 +315,10 @@ extern int gdbpy_auto_load_enabled (const struct extension_language_defn *); extern enum ext_lang_rc gdbpy_apply_val_pretty_printer (const struct extension_language_defn *, - struct type *type, const gdb_byte *valaddr, + struct type *type, LONGEST embedded_offset, CORE_ADDR address, struct ui_file *stream, int recurse, - const struct value *val, + struct value *val, const struct value_print_options *options, const struct language_defn *language); extern enum ext_lang_bt_status gdbpy_apply_frame_filter |