[21/55] Introduce ada_value_print_inner
Commit Message
This introduces ada_value_print_inner.
gdb/ChangeLog
2019-12-08 Tom Tromey <tom@tromey.com>
* ada-valprint.c (ada_value_print_inner): New function.
* ada-lang.h (ada_value_print_inner): Declare.
* ada-lang.c (ada_language_defn): Use ada_value_print_inner.
Change-Id: I88786b629ba0fe08f508b968f2a1a301dfe1c25f
---
gdb/ChangeLog | 6 ++++++
gdb/ada-lang.c | 2 +-
gdb/ada-lang.h | 5 +++++
gdb/ada-valprint.c | 11 +++++++++++
4 files changed, 23 insertions(+), 1 deletion(-)
@@ -14114,7 +14114,7 @@ extern const struct language_defn ada_language_defn = {
ada_print_type, /* Print a type using appropriate syntax */
ada_print_typedef, /* Print a typedef using appropriate syntax */
ada_val_print, /* Print a value using appropriate syntax */
- nullptr, /* la_value_print_inner */
+ ada_value_print_inner, /* la_value_print_inner */
ada_value_print, /* Print a top-level value */
ada_read_var_value, /* la_read_var_value */
NULL, /* Language specific skip_trampoline */
@@ -169,6 +169,11 @@ extern void ada_val_print (struct type *, int, CORE_ADDR,
struct value *,
const struct value_print_options *);
+/* Implement la_value_print_inner for Ada. */
+
+extern void ada_value_print_inner (struct value *, struct ui_file *, int,
+ const struct value_print_options *);
+
extern void ada_value_print (struct value *, struct ui_file *,
const struct value_print_options *);
@@ -1219,6 +1219,17 @@ ada_val_print (struct type *type,
}
}
+/* See ada-lang.h. */
+
+void
+ada_value_print_inner (struct value *val, struct ui_file *stream,
+ int recurse,
+ const struct value_print_options *options)
+{
+ ada_val_print (value_type (val), value_embedded_offset (val),
+ value_address (val), stream, recurse, val, options);
+}
+
void
ada_value_print (struct value *val0, struct ui_file *stream,
const struct value_print_options *options)