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
commit62c4663d3c59b53e622b2f83eeae7c8d47c656dd (patch)
treea05fbe09b2db386787c02bde23a99fd9b6232c99
parent621821900289e9ef3472dc430d6fcf4d55b301e2 (diff)
downloadbinutils-62c4663d3c59b53e622b2f83eeae7c8d47c656dd.zip
binutils-62c4663d3c59b53e622b2f83eeae7c8d47c656dd.tar.gz
binutils-62c4663d3c59b53e622b2f83eeae7c8d47c656dd.tar.bz2
Introduce m2_value_print_inner
This introduces m2_value_print_inner. gdb/ChangeLog 2020-03-13 Tom Tromey <tom@tromey.com> * m2-valprint.c (m2_value_print_inner): New function. * m2-lang.h (m2_value_print_inner): Declare. * m2-lang.c (m2_language_defn): Use m2_value_print_inner.
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/m2-lang.c2
-rw-r--r--gdb/m2-lang.h5
-rw-r--r--gdb/m2-valprint.c10
4 files changed, 22 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index add19fe..f4720f5 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,11 @@
2020-03-13 Tom Tromey <tom@tromey.com>
+ * m2-valprint.c (m2_value_print_inner): New function.
+ * m2-lang.h (m2_value_print_inner): Declare.
+ * m2-lang.c (m2_language_defn): Use m2_value_print_inner.
+
+2020-03-13 Tom Tromey <tom@tromey.com>
+
* opencl-lang.c (opencl_language_defn): Use c_value_print_inner.
* objc-lang.c (objc_language_defn): Use c_value_print_inner.
* c-valprint.c (c_value_print_inner): New function.
diff --git a/gdb/m2-lang.c b/gdb/m2-lang.c
index 31c248d..c500366 100644
--- a/gdb/m2-lang.c
+++ b/gdb/m2-lang.c
@@ -394,7 +394,7 @@ extern const struct language_defn m2_language_defn =
m2_print_type, /* Print a type using appropriate syntax */
m2_print_typedef, /* Print a typedef using appropriate syntax */
m2_val_print, /* Print a value using appropriate syntax */
- nullptr, /* la_value_print_inner */
+ m2_value_print_inner, /* la_value_print_inner */
c_value_print, /* Print a top-level value */
default_read_var_value, /* la_read_var_value */
NULL, /* Language specific skip_trampoline */
diff --git a/gdb/m2-lang.h b/gdb/m2-lang.h
index 81c3460..636ba39 100644
--- a/gdb/m2-lang.h
+++ b/gdb/m2-lang.h
@@ -40,6 +40,11 @@ extern void m2_val_print (struct type *, int, CORE_ADDR,
struct value *,
const struct value_print_options *);
+/* Implement la_value_print_inner for Modula-2. */
+
+extern void m2_value_print_inner (struct value *, struct ui_file *, int,
+ const struct value_print_options *);
+
extern int get_long_set_bounds (struct type *type, LONGEST *low,
LONGEST *high);
diff --git a/gdb/m2-valprint.c b/gdb/m2-valprint.c
index fa767cd..d63354e 100644
--- a/gdb/m2-valprint.c
+++ b/gdb/m2-valprint.c
@@ -503,3 +503,13 @@ m2_val_print (struct type *type, int embedded_offset,
break;
}
}
+
+/* See m2-lang.h. */
+
+void
+m2_value_print_inner (struct value *val, struct ui_file *stream, int recurse,
+ const struct value_print_options *options)
+{
+ m2_val_print (value_type (val), value_embedded_offset (val),
+ value_address (val), stream, recurse, val, options);
+}