+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.
+
2002-03-30 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* cp-demangle.c (java_demangle_v3): Don't try to release "demangled"
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
}
}
-#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
return return_value;
}
-#endif /* IN_LIBGCC2 */
+#endif /* IN_LIBGCC2 || IN_GLIBCPP_V3 */
/* Demangle NAME in the G++ V3 ABI demangling style, and return either
}
+#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,
else
return 0;
}
+#endif /* IN_GLIBCPP_V3 */
#ifdef STANDALONE_DEMANGLER
abort if an allocation fails. Instead, percolate an error code up
through the call chain. */
-#ifdef IN_LIBGCC2
+#if defined(IN_LIBGCC2) || defined(IN_GLIBCPP_V3)
#define RETURN_ON_ALLOCATION_FAILURE
#endif