@@ -904,7 +904,7 @@ extern const struct language_defn c_language_defn =
c_print_type, /* Print a type using appropriate syntax */
c_print_typedef, /* Print a typedef using appropriate syntax */
c_val_print, /* Print a value using appropriate syntax */
- nullptr, /* la_value_print_inner */
+ c_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 */
@@ -1050,7 +1050,7 @@ extern const struct language_defn cplus_language_defn =
c_print_type, /* Print a type using appropriate syntax */
c_print_typedef, /* Print a typedef using appropriate syntax */
c_val_print, /* Print a value using appropriate syntax */
- nullptr, /* la_value_print_inner */
+ c_value_print_inner, /* la_value_print_inner */
c_value_print, /* Print a top-level value */
default_read_var_value, /* la_read_var_value */
cplus_skip_trampoline, /* Language specific skip_trampoline */
@@ -1105,7 +1105,7 @@ extern const struct language_defn asm_language_defn =
c_print_type, /* Print a type using appropriate syntax */
c_print_typedef, /* Print a typedef using appropriate syntax */
c_val_print, /* Print a value using appropriate syntax */
- nullptr, /* la_value_print_inner */
+ c_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 */
@@ -1160,7 +1160,7 @@ extern const struct language_defn minimal_language_defn =
c_print_type, /* Print a type using appropriate syntax */
c_print_typedef, /* Print a typedef using appropriate syntax */
c_val_print, /* Print a value using appropriate syntax */
- nullptr, /* la_value_print_inner */
+ c_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 */
@@ -87,6 +87,11 @@ extern void c_val_print (struct type *,
struct value *,
const struct value_print_options *);
+/* Implement la_value_print_inner for the C family of languages. */
+
+extern void c_value_print_inner (struct value *, struct ui_file *, int,
+ const struct value_print_options *);
+
extern void c_value_print (struct value *, struct ui_file *,
const struct value_print_options *);
@@ -557,6 +557,17 @@ c_val_print (struct type *type,
break;
}
}
+
+/* See c-lang.h. */
+
+void
+c_value_print_inner (struct value *val, struct ui_file *stream, int recurse,
+ const struct value_print_options *options)
+{
+ c_val_print (value_type (val), value_embedded_offset (val),
+ value_address (val), stream, recurse, val, options);
+}
+
void
c_value_print (struct value *val, struct ui_file *stream,
@@ -382,7 +382,7 @@ extern const struct language_defn objc_language_defn = {
c_print_type, /* Print a type using appropriate syntax */
c_print_typedef, /* Print a typedef using appropriate syntax */
c_val_print, /* Print a value using appropriate syntax */
- nullptr, /* la_value_print_inner */
+ c_value_print_inner, /* la_value_print_inner */
c_value_print, /* Print a top-level value */
default_read_var_value, /* la_read_var_value */
objc_skip_trampoline, /* Language specific skip_trampoline */
@@ -1061,7 +1061,7 @@ extern const struct language_defn opencl_language_defn =
opencl_print_type, /* Print a type using appropriate syntax */
c_print_typedef, /* Print a typedef using appropriate syntax */
c_val_print, /* Print a value using appropriate syntax */
- nullptr, /* la_value_print_inner */
+ c_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 */