summaryrefslogtreecommitdiff
path: root/libiberty/cp-demangle.c
diff options
context:
space:
mode:
authorpme <pme@138bc75d-0d04-0410-961f-82ee72b054a4>2002-04-01 21:55:12 +0000
committerpme <pme@138bc75d-0d04-0410-961f-82ee72b054a4>2002-04-01 21:55:12 +0000
commit5acfe29d59af89dbc9d777b850ef68552a8610d1 (patch)
tree109b3bc7a1238e3c14897e24e922cb7fadb46de0 /libiberty/cp-demangle.c
parent1462ac889d54846bf3424e9ec03113083cd94c5b (diff)
downloadgcc-5acfe29d59af89dbc9d777b850ef68552a8610d1.tar.gz
2002-04-01 Phil Edwards <pme@gcc.gnu.org>
* cp-demangle.c (__cxa_demangle): Also protect with IN_GLIBCPP_V3. (is_gnu_v3_mangled_ctor, is_gnu_v3_mangled_ctor): Conditionally not compile if IN_GLIBCPP_V3 defined. * dyn-string.c: Also allow IN_GLIBCPP_V3 to change allocation scheme. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@51708 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libiberty/cp-demangle.c')
-rw-r--r--libiberty/cp-demangle.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c
index a130fd8374c..4a91700d543 100644
--- a/libiberty/cp-demangle.c
+++ b/libiberty/cp-demangle.c
@@ -3577,7 +3577,7 @@ cp_demangle_type (type_name, result)
return status;
}
-#ifdef IN_LIBGCC2
+#if defined(IN_LIBGCC2) || defined(IN_GLIBCPP_V3)
extern char *__cxa_demangle PARAMS ((const char *, char *, size_t *, int *));
/* ia64 ABI-mandated entry point in the C++ runtime library for performing
@@ -3685,7 +3685,7 @@ __cxa_demangle (mangled_name, output_buffer, length, status)
}
}
-#else /* !IN_LIBGCC2 */
+#else /* ! (IN_LIBGCC2 || IN_GLIBCPP_V3) */
/* Variant entry point for integration with the existing cplus-dem
demangler. Attempts to demangle MANGLED. If the demangling
@@ -3854,7 +3854,7 @@ java_demangle_v3 (mangled)
return return_value;
}
-#endif /* IN_LIBGCC2 */
+#endif /* IN_LIBGCC2 || IN_GLIBCPP_V3 */
/* Demangle NAME in the G++ V3 ABI demangling style, and return either
@@ -3894,6 +3894,7 @@ demangle_v3_with_details (name)
}
+#ifndef IN_GLIBCPP_V3
/* Return non-zero iff NAME is the mangled form of a constructor name
in the G++ V3 ABI demangling style. Specifically, return:
- '1' if NAME is a complete object constructor,
@@ -3936,6 +3937,7 @@ is_gnu_v3_mangled_dtor (name)
else
return 0;
}
+#endif /* IN_GLIBCPP_V3 */
#ifdef STANDALONE_DEMANGLER