*** empty log message ***
[deliverable/binutils-gdb.git] / gdb / p-lang.h
CommitLineData
373a8247 1/* Pascal language support definitions for GDB, the GNU debugger.
5bcca90b 2
7b6bb8da 3 Copyright (C) 2000, 2005, 2006, 2007, 2008, 2009, 2010, 2011
0fb0cc75 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 */
25b524e8
JK
33extern void pascal_print_type (struct type *, const char *, struct ui_file *,
34 int, int);
373a8247 35
5c6ce71d
TT
36extern void pascal_print_typedef (struct type *, struct symbol *,
37 struct ui_file *);
38
fc1a4b47 39extern int pascal_val_print (struct type *, const gdb_byte *, int,
79a45b7d 40 CORE_ADDR, struct ui_file *, int,
0e03807e 41 const struct value *,
79a45b7d 42 const struct value_print_options *);
373a8247 43
79a45b7d
TT
44extern int pascal_value_print (struct value *, struct ui_file *,
45 const struct value_print_options *);
373a8247
PM
46
47extern void pascal_type_print_method_args (char *, char *,
48 struct ui_file *);
49
50/* These are in p-lang.c: */
51
e2625b33 52extern int
6c7a06a3
TT
53 is_pascal_string_type (struct type *, int *, int *, int *,
54 struct type **, char **);
5598ce11 55
6c7a06a3 56extern void pascal_printchar (int, struct type *, struct ui_file *);
373a8247 57
6c7a06a3 58extern void pascal_printstr (struct ui_file *, struct type *, const gdb_byte *,
be759fcf 59 unsigned int, const char *, int,
79a45b7d 60 const struct value_print_options *);
373a8247 61
373a8247
PM
62extern struct type **const (pascal_builtin_types[]);
63
64/* These are in p-typeprint.c: */
65
66extern void
67 pascal_type_print_base (struct type *, struct ui_file *, int, int);
68
69extern void
70 pascal_type_print_varspec_prefix (struct type *, struct ui_file *, int, int);
71
fc1a4b47 72extern void pascal_object_print_value_fields (struct type *, const gdb_byte *,
a2bd3dcd 73 CORE_ADDR, struct ui_file *,
79a45b7d 74 int,
0e03807e 75 const struct value *,
79a45b7d 76 const struct value_print_options *,
373a8247
PM
77 struct type **, int);
78
79extern int pascal_object_is_vtbl_ptr_type (struct type *);
80
81extern int pascal_object_is_vtbl_member (struct type *);
This page took 0.886603 seconds and 4 git commands to generate.