aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/f-lang.c2
-rw-r--r--gdb/f-lang.h6
-rw-r--r--gdb/f-valprint.c10
4 files changed, 23 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index cd39b22..5e59716 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,11 @@
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.
+
+2020-03-13 Tom Tromey <tom@tromey.com>
+
* p-valprint.c (pascal_value_print_inner): New function.
* p-lang.h (pascal_value_print_inner): Declare.
* p-lang.c (pascal_language_defn): Use pascal_value_print_inner.
diff --git a/gdb/f-lang.c b/gdb/f-lang.c
index 4f4e8ae..e0a2184 100644
--- a/gdb/f-lang.c
+++ b/gdb/f-lang.c
@@ -647,7 +647,7 @@ extern const struct language_defn f_language_defn =
f_print_type, /* Print a type using appropriate syntax */
f_print_typedef, /* Print a typedef using appropriate syntax */
f_val_print, /* Print a value using appropriate syntax */
- nullptr, /* la_value_print_inner */
+ f_value_print_innner, /* la_value_print_inner */
c_value_print, /* FIXME */
default_read_var_value, /* la_read_var_value */
NULL, /* Language specific skip_trampoline */
diff --git a/gdb/f-lang.h b/gdb/f-lang.h
index 9dfbfe5..5cc59ad 100644
--- a/gdb/f-lang.h
+++ b/gdb/f-lang.h
@@ -41,6 +41,12 @@ extern void f_val_print (struct type *, int, CORE_ADDR,
struct value *,
const struct value_print_options *);
+/* Implement la_value_print_inner for Fortran. */
+
+extern void f_value_print_innner (struct value *val, struct ui_file *stream,
+ int recurse,
+ const struct value_print_options *options);
+
/* Language-specific data structures */
/* A common block. */
diff --git a/gdb/f-valprint.c b/gdb/f-valprint.c
index bbc09cd..10593ee 100644
--- a/gdb/f-valprint.c
+++ b/gdb/f-valprint.c
@@ -394,6 +394,16 @@ f_val_print (struct type *type, int embedded_offset,
}
}
+/* See f-lang.h. */
+
+void
+f_value_print_innner (struct value *val, struct ui_file *stream, int recurse,
+ const struct value_print_options *options)
+{
+ f_val_print (value_type (val), value_embedded_offset (val),
+ value_address (val), stream, recurse, val, options);
+}
+
static void
info_common_command_for_block (const struct block *block, const char *comname,
int *any_printed)