Introduce m2_value_print_inner
authorTom Tromey <tom@tromey.com>
Fri, 13 Mar 2020 23:39:52 +0000 (17:39 -0600)
committerTom Tromey <tom@tromey.com>
Sat, 14 Mar 2020 00:03:40 +0000 (18:03 -0600)
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.

gdb/ChangeLog
gdb/m2-lang.c
gdb/m2-lang.h
gdb/m2-valprint.c

index add19fe186f44ee7216bcb8eaf8b2b19eff70396..f4720f5fa593fe7042128952088546a6631ee439 100644 (file)
@@ -1,3 +1,9 @@
+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.
index 31c248d60e48e163606e48d9d45a5de26cad8127..c500366d651e048edaa566fc3d486feff9296454 100644 (file)
@@ -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 */
index 81c346086e884e147911a5f06e6bc64c85d7e029..636ba39841df4ddf71d154868246e0c60a624730 100644 (file)
@@ -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);
 
index fa767cdbceca7c2f530e806ef5364938c3f1bca8..d63354e40eb017ad74a1458587331ef1cb7b3511 100644 (file)
@@ -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);
+}