-extern void m2_print_type (struct type *, char *, struct ui_file *, int,
- int);
+extern void m2_print_type (struct type *, const char *, struct ui_file *, int,
+ int, const struct type_print_options *);
+
+extern void m2_print_typedef (struct type *, struct symbol *,
+ struct ui_file *);
+
+extern int m2_is_long_set (struct type *type);
+extern int m2_is_unbounded_array (struct type *type);
+
+/* 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);
+
+/* Modula-2 types */
+
+struct builtin_m2_type
+{
+ struct type *builtin_char;
+ struct type *builtin_int;
+ struct type *builtin_card;
+ struct type *builtin_real;
+ struct type *builtin_bool;
+};
+
+/* Return the Modula-2 type table for the specified architecture. */
+extern const struct builtin_m2_type *builtin_m2_type (struct gdbarch *gdbarch);