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