* tm-rs6000.h (AIX_BUGGY_PTRACE_CALL): Zap, we think we fixed it.
[deliverable/binutils-gdb.git] / gdb / demangle.h
index 71cdb8018396ae05c1e7c4de3a3a3425553c3788..cc3fc60c0f4347c7e4377d9bafce70a275ec82a9 100644 (file)
@@ -1,4 +1,4 @@
-/* Demangler defs for GNU C++ style demangling.
+/* Defs for interface to demanglers.
    Copyright 1992 Free Software Foundation, Inc.
    
    This program is free software; you can redistribute it and/or modify
 
 #define DMGL_PARAMS    (1 << 0)        /* Include function args */
 #define DMGL_ANSI      (1 << 1)        /* Include const, volatile, etc */
+
+/* Enumeration of possible demangling styles.
+
+   Lucid and cfront styles are still kept logically distinct, even though
+   they now both behave identically.  The resulting style is actual the
+   union of both.  I.E. either style recognizes both "__pt__" and "__rf__"
+   for operator "->", even though the first is lucid style and the second
+   is cfront/ARM style. (FIXME?) */
+
+extern enum demangling_styles
+{
+  unknown_demangling = 0,
+  auto_demangling,
+  gnu_demangling,
+  lucid_demangling,
+  cfront_demangling
+} current_demangling_style;
+
+/* Define string names for the various demangling styles. */
+
+#define AUTO_DEMANGLING_STYLE_STRING   "auto"
+#define GNU_DEMANGLING_STYLE_STRING    "gnu"
+#define LUCID_DEMANGLING_STYLE_STRING  "lucid"
+#define CFRONT_DEMANGLING_STYLE_STRING "cfront"
+
+/* Some macros to test what demangling style is active. */
+
+#define AUTO_DEMANGLING (current_demangling_style == auto_demangling)
+#define GNU_DEMANGLING (current_demangling_style == gnu_demangling)
+#define LUCID_DEMANGLING (current_demangling_style == lucid_demangling)
+#define CFRONT_DEMANGLING (current_demangling_style == cfront_demangling)
+
+extern void
+set_demangling_style PARAMS ((char *));
This page took 0.024391 seconds and 4 git commands to generate.