merge from gcc
[deliverable/binutils-gdb.git] / include / demangle.h
index 7fb6259098d0e27c43dfd1628d6d76edadd1b678..96f60d7288600543fbf3aefe4539f1af8eafae51 100644 (file)
@@ -1,5 +1,6 @@
 /* Defs for interface to demanglers.
-   Copyright 1992, 1995, 1996 Free Software Foundation, Inc.
+   Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000
+   Free Software Foundation, Inc.
    
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -120,8 +121,37 @@ cplus_demangle_set_style PARAMS ((enum demangling_styles style));
 extern enum demangling_styles 
 cplus_demangle_name_to_style PARAMS ((const char *name));
 
-/* V3 ABI demangling entry point, defined in cp-demangle.c.  */
+/* V3 ABI demangling entry points, defined in cp-demangle.c.  */
 extern char*
 cplus_demangle_v3 PARAMS ((const char* mangled));
 
+extern char*
+java_demangle_v3 PARAMS ((const char* mangled));
+
+
+enum gnu_v3_ctor_kinds {
+  gnu_v3_complete_object_ctor = 1,
+  gnu_v3_base_object_ctor,
+  gnu_v3_complete_object_allocating_ctor
+};
+
+/* Return non-zero iff NAME is the mangled form of a constructor name
+   in the G++ V3 ABI demangling style.  Specifically, return an `enum
+   gnu_v3_ctor_kinds' value indicating what kind of constructor
+   it is.  */
+extern enum gnu_v3_ctor_kinds is_gnu_v3_mangled_ctor (const char *name);
+
+
+enum gnu_v3_dtor_kinds {
+  gnu_v3_deleting_dtor = 1,
+  gnu_v3_complete_object_dtor,
+  gnu_v3_base_object_dtor
+};
+
+/* Return non-zero iff NAME is the mangled form of a destructor name
+   in the G++ V3 ABI demangling style.  Specifically, return an `enum
+   gnu_v3_dtor_kinds' value, indicating what kind of destructor
+   it is.  */
+extern enum gnu_v3_dtor_kinds is_gnu_v3_mangled_dtor (const char *name);
+
 #endif /* DEMANGLE_H */
This page took 0.023406 seconds and 4 git commands to generate.