aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2020-03-13 17:39:52 -0600
committerTom Tromey <tom@tromey.com>2020-03-13 18:03:40 -0600
commit26792ee0345c09bd1c76f3ee0e16ed15ab7215b9 (patch)
treef4247dc2530b2e306004f9d8dd70dceebe528158
parent24051bbe843abcdcc108542da195e009c3f19910 (diff)
downloadgdb-26792ee0345c09bd1c76f3ee0e16ed15ab7215b9.zip
gdb-26792ee0345c09bd1c76f3ee0e16ed15ab7215b9.tar.gz
gdb-26792ee0345c09bd1c76f3ee0e16ed15ab7215b9.tar.bz2
Introduce ada_value_print_inner
This introduces ada_value_print_inner. gdb/ChangeLog 2020-03-13 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.
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/ada-lang.c2
-rw-r--r--gdb/ada-lang.h5
-rw-r--r--gdb/ada-valprint.c11
4 files changed, 23 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 5e59716..25eb0f5 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,11 @@
2020-03-13 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.
+
+2020-03-13 Tom Tromey <tom@tromey.com>
+
* f-valprint.c (f_value_print_innner): New function.
* f-lang.h (f_value_print_innner): Declare.
* f-lang.c (f_language_defn): Use f_value_print_innner.
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index fb3bfa5..9fb59e3 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -14110,7 +14110,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 */
diff --git a/gdb/ada-lang.h b/gdb/ada-lang.h
index e388c75..f7c0951 100644
--- a/gdb/ada-lang.h
+++ b/gdb/ada-lang.h
@@ -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 *);
diff --git a/gdb/ada-valprint.c b/gdb/ada-valprint.c
index b918caf..c983cbb 100644
--- a/gdb/ada-valprint.c
+++ b/gdb/ada-valprint.c
@@ -1222,6 +1222,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)