A ton of changes to improve C++ debugging. See ChangeLog.
[deliverable/binutils-gdb.git] / gdb / demangle.h
CommitLineData
2dbde378 1/* Defs for interface to demanglers.
8f793aa5
FF
2 Copyright 1992 Free Software Foundation, Inc.
3
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 2, or (at your option)
7 any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with this program; if not, write to the Free Software
16 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
17
18
19#define DMGL_PARAMS (1 << 0) /* Include function args */
20#define DMGL_ANSI (1 << 1) /* Include const, volatile, etc */
2dbde378 21
3dc755fb
FF
22/* Enumeration of possible demangling styles.
23
24 Lucid and cfront styles are still kept logically distinct, even though
25 they now both behave identically. The resulting style is actual the
26 union of both. I.E. either style recognizes both "__pt__" and "__rf__"
27 for operator "->", even though the first is lucid style and the second
28 is cfront/ARM style. (FIXME?) */
29
2dbde378
FF
30extern enum demangling_styles
31{
32 unknown_demangling = 0,
33 auto_demangling,
34 gnu_demangling,
35 lucid_demangling,
36 cfront_demangling
37} current_demangling_style;
38
3dc755fb
FF
39/* Define string names for the various demangling styles. */
40
41#define AUTO_DEMANGLING_STYLE_STRING "auto"
2dbde378
FF
42#define GNU_DEMANGLING_STYLE_STRING "gnu"
43#define LUCID_DEMANGLING_STYLE_STRING "lucid"
44#define CFRONT_DEMANGLING_STYLE_STRING "cfront"
3dc755fb
FF
45
46/* Some macros to test what demangling style is active. */
47
48#define AUTO_DEMANGLING (current_demangling_style == auto_demangling)
49#define GNU_DEMANGLING (current_demangling_style == gnu_demangling)
50#define LUCID_DEMANGLING (current_demangling_style == lucid_demangling)
51#define CFRONT_DEMANGLING (current_demangling_style == cfront_demangling)
2dbde378
FF
52
53extern void
54set_demangling_style PARAMS ((char *));
This page took 0.033009 seconds and 4 git commands to generate.