diff options
| author | tv <tv@NetBSD.org> | 1999-02-02 21:00:32 +0000 |
|---|---|---|
| committer | tv <tv@NetBSD.org> | 1999-02-02 21:00:32 +0000 |
| commit | 3b3908f06faa5ffedb00c6aa21fe7ecfc3f66c95 (patch) | |
| tree | 0341a04bb99d67561f9f84e14463a8f39738851c /gnu/dist/include | |
| parent | f108f0164ea6fce3fbba310856779870449d68c9 (diff) | |
Update the C++ demangler to one from the egcs 1.2 trunk, dated 19980131.
This is a bit more robust than that in egcs 1.1.1, and recognizes more
(but not yet all) template constructions.
Diffstat (limited to 'gnu/dist/include')
| -rw-r--r-- | gnu/dist/include/demangle.h | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/gnu/dist/include/demangle.h b/gnu/dist/include/demangle.h index 00f6a0c3bc0..917973cac64 100644 --- a/gnu/dist/include/demangle.h +++ b/gnu/dist/include/demangle.h @@ -38,8 +38,12 @@ #define DMGL_GNU (1 << 9) #define DMGL_LUCID (1 << 10) #define DMGL_ARM (1 << 11) +#define DMGL_HP (1 << 12) /* For the HP aCC compiler; same as ARM + except for template arguments, etc. */ +#define DMGL_EDG (1 << 13) + /* If none of these are set, use 'current_demangling_style' as the default. */ -#define DMGL_STYLE_MASK (DMGL_AUTO|DMGL_GNU|DMGL_LUCID|DMGL_ARM) +#define DMGL_STYLE_MASK (DMGL_AUTO|DMGL_GNU|DMGL_LUCID|DMGL_ARM|DMGL_HP|DMGL_EDG) /* Enumeration of possible demangling styles. @@ -55,7 +59,9 @@ extern enum demangling_styles auto_demangling = DMGL_AUTO, gnu_demangling = DMGL_GNU, lucid_demangling = DMGL_LUCID, - arm_demangling = DMGL_ARM + arm_demangling = DMGL_ARM, + hp_demangling = DMGL_HP, + edg_demangling = DMGL_EDG } current_demangling_style; /* Define string names for the various demangling styles. */ @@ -64,6 +70,8 @@ extern enum demangling_styles #define GNU_DEMANGLING_STYLE_STRING "gnu" #define LUCID_DEMANGLING_STYLE_STRING "lucid" #define ARM_DEMANGLING_STYLE_STRING "arm" +#define HP_DEMANGLING_STYLE_STRING "hp" +#define EDG_DEMANGLING_STYLE_STRING "edg" /* Some macros to test what demangling style is active. */ @@ -71,7 +79,9 @@ extern enum demangling_styles #define AUTO_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_AUTO) #define GNU_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_GNU) #define LUCID_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_LUCID) -#define ARM_DEMANGLING (CURRENT_DEMANGLING_STYLE & DMGL_ARM) +#define ARM_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_ARM) +#define HP_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_HP) +#define EDG_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_EDG) extern char * cplus_demangle PARAMS ((const char *mangled, int options)); |
