- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#ifndef M2_LANG_H
+#define M2_LANG_H
+
+struct type_print_options;
+struct parser_state;
+
+extern int m2_parse (struct parser_state *); /* Defined in m2-exp.y */
+
+/* Defined in m2-typeprint.c */
+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);