gdb
[deliverable/binutils-gdb.git] / gdb / p-lang.h
CommitLineData
373a8247 1/* Pascal language support definitions for GDB, the GNU debugger.
5bcca90b 2
0fb0cc75
JB
3 Copyright (C) 2000, 2005, 2006, 2007, 2008, 2009
4 Free Software Foundation, Inc.
373a8247
PM
5
6 This file is part of GDB.
7
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
a9762ec7 10 the Free Software Foundation; either version 3 of the License, or
373a8247
PM
11 (at your option) any later version.
12
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
17
18 You should have received a copy of the GNU General Public License
a9762ec7 19 along with this program. If not, see <http://www.gnu.org/licenses/>. */
373a8247
PM
20
21/* This file is derived from c-lang.h */
22
373a8247 23struct value;
373a8247 24
cd6c7346
PM
25/* Defined in p-lang.c */
26extern const char *pascal_main_name (void);
27
373a8247
PM
28extern int pascal_parse (void); /* Defined in p-exp.y */
29
30extern void pascal_error (char *); /* Defined in p-exp.y */
31
32/* Defined in p-typeprint.c */
33extern void pascal_print_type (struct type *, char *, struct ui_file *, int, int);
34
5c6ce71d
TT
35extern void pascal_print_typedef (struct type *, struct symbol *,
36 struct ui_file *);
37
fc1a4b47 38extern int pascal_val_print (struct type *, const gdb_byte *, int,
79a45b7d
TT
39 CORE_ADDR, struct ui_file *, int,
40 const struct value_print_options *);
373a8247 41
79a45b7d
TT
42extern int pascal_value_print (struct value *, struct ui_file *,
43 const struct value_print_options *);
373a8247
PM
44
45extern void pascal_type_print_method_args (char *, char *,
46 struct ui_file *);
47
48/* These are in p-lang.c: */
49
e2625b33 50extern int
6c7a06a3
TT
51 is_pascal_string_type (struct type *, int *, int *, int *,
52 struct type **, char **);
5598ce11 53
6c7a06a3 54extern void pascal_printchar (int, struct type *, struct ui_file *);
373a8247 55
6c7a06a3
TT
56extern void pascal_printstr (struct ui_file *, struct type *, const gdb_byte *,
57 unsigned int, int,
79a45b7d 58 const struct value_print_options *);
373a8247 59
373a8247
PM
60extern struct type **const (pascal_builtin_types[]);
61
62/* These are in p-typeprint.c: */
63
64extern void
65 pascal_type_print_base (struct type *, struct ui_file *, int, int);
66
67extern void
68 pascal_type_print_varspec_prefix (struct type *, struct ui_file *, int, int);
69
fc1a4b47 70extern void pascal_object_print_value_fields (struct type *, const gdb_byte *,
a2bd3dcd 71 CORE_ADDR, struct ui_file *,
79a45b7d
TT
72 int,
73 const struct value_print_options *,
373a8247
PM
74 struct type **, int);
75
76extern int pascal_object_is_vtbl_ptr_type (struct type *);
77
78extern int pascal_object_is_vtbl_member (struct type *);
This page took 0.734855 seconds and 4 git commands to generate.