gdb/m2-lang.h - gdb

Data types defined

Source code

  1. /* Modula 2 language support definitions for GDB, the GNU debugger.

  2.    Copyright (C) 1992-2015 Free Software Foundation, Inc.

  3.    This file is part of GDB.

  4.    This program is free software; you can redistribute it and/or modify
  5.    it under the terms of the GNU General Public License as published by
  6.    the Free Software Foundation; either version 3 of the License, or
  7.    (at your option) any later version.

  8.    This program is distributed in the hope that it will be useful,
  9.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  10.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  11.    GNU General Public License for more details.

  12.    You should have received a copy of the GNU General Public License
  13.    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */

  14. struct type_print_options;
  15. struct parser_state;

  16. extern int m2_parse (struct parser_state *); /* Defined in m2-exp.y */

  17. extern void m2_error (char *);        /* Defined in m2-exp.y */

  18. /* Defined in m2-typeprint.c */
  19. extern void m2_print_type (struct type *, const char *, struct ui_file *, int,
  20.                            int, const struct type_print_options *);

  21. extern void m2_print_typedef (struct type *, struct symbol *,
  22.                               struct ui_file *);

  23. extern int m2_is_long_set (struct type *type);
  24. extern int m2_is_unbounded_array (struct type *type);

  25. extern void m2_val_print (struct type *, const gdb_byte *, int, CORE_ADDR,
  26.                           struct ui_file *, int,
  27.                           const struct value *,
  28.                           const struct value_print_options *);

  29. extern int get_long_set_bounds (struct type *type, LONGEST *low,
  30.                                 LONGEST *high);

  31. /* Modula-2 types */

  32. struct builtin_m2_type
  33. {
  34.   struct type *builtin_char;
  35.   struct type *builtin_int;
  36.   struct type *builtin_card;
  37.   struct type *builtin_real;
  38.   struct type *builtin_bool;
  39. };

  40. /* Return the Modula-2 type table for the specified architecture.  */
  41. extern const struct builtin_m2_type *builtin_m2_type (struct gdbarch *gdbarch);