aboutsummaryrefslogtreecommitdiff
path: root/gdb/p-lang.c
diff options
context:
space:
mode:
authorAndrew Burgess <andrew.burgess@embecosm.com>2020-06-01 15:21:33 +0100
committerAndrew Burgess <andrew.burgess@embecosm.com>2020-06-17 09:25:11 +0100
commita1d1fa3e417b4bd8e79e2a731f9c6089e2d5f747 (patch)
tree4b2e204726b469774d366ec68145edba4c485d91 /gdb/p-lang.c
parentf16a9f57b50af64ccb9652d20cc934fc5e80cd20 (diff)
downloadbinutils-a1d1fa3e417b4bd8e79e2a731f9c6089e2d5f747.zip
binutils-a1d1fa3e417b4bd8e79e2a731f9c6089e2d5f747.tar.gz
binutils-a1d1fa3e417b4bd8e79e2a731f9c6089e2d5f747.tar.bz2
gdb: Convert language la_value_print field to a method
This commit changes the language_data::la_value_print function pointer member variable into a member function of language_defn. There should be no user visible changes after this commit. gdb/ChangeLog: * ada-lang.c (ada_language_data): Delete la_value_print initializer. (ada_language::value_print): New member function. * c-lang.c (c_language_data): Delete la_value_print initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_language_data): Likewise. * go-lang.c (go_language_data): Likewise. * language.c (unk_lang_value_print): Delete. (language_defn::value_print): Define new member function. (unknown_language_data): Delete la_value_print initializer. (unknown_language::value_print): New member function. (auto_language_data): Delete la_value_print initializer. (auto_language::value_print): New member function. * language.h (language_data): Delete la_value_print field. (language_defn::value_print): Declare new member function. (LA_VALUE_PRINT): Update call to value_print. * m2-lang.c (m2_language_data): Delete la_value_print initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. (pascal_language::value_print): New member function. * rust-lang.c (rust_language_data): Delete la_value_print initializer.
Diffstat (limited to 'gdb/p-lang.c')
-rw-r--r--gdb/p-lang.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/gdb/p-lang.c b/gdb/p-lang.c
index 808e9e5..ff3ba3b 100644
--- a/gdb/p-lang.c
+++ b/gdb/p-lang.c
@@ -400,7 +400,6 @@ extern const struct language_data pascal_language_data =
pascal_emit_char, /* Print a single char */
pascal_print_typedef, /* Print a typedef using appropriate syntax */
pascal_value_print_inner, /* la_value_print_inner */
- pascal_value_print, /* Print a top-level value */
"this", /* name_of_this */
false, /* la_store_sym_names_in_linkage_form_p */
basic_lookup_symbol_nonlocal, /* lookup_symbol_nonlocal */
@@ -478,6 +477,14 @@ public:
{
pascal_print_type (type, varstring, stream, show, level, flags);
}
+
+ /* See language.h. */
+
+ void value_print (struct value *val, struct ui_file *stream,
+ const struct value_print_options *options) const override
+ {
+ return pascal_value_print (val, stream, options);
+ }
};
/* Single instance of the Pascal language class. */