+2002-11-25 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/abi_check.cc: Add CXXABI_1.2.1 as compatible.
+ * config/linker-map.gnu: Version __cxa_guard_acquire,
+ __cxa_guard_release, __cxa_guard_abort in CXXABI_1.2.1.
+
2002-11-25 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
CXXABI_1.2 {
global:
- __cxa_*;
+ __cxa_allocate_exception;
+ __cxa_bad_cast;
+ __cxa_bad_typeid;
+ __cxa_begin_catch;
+ __cxa_call_unexpected;
+ __cxa_current_exception_type;
+ __cxa_demangle;
+ __cxa_dyn_string_append_char;
+ __cxa_dyn_string_append_cstr;
+ __cxa_dyn_string_append;
+ __cxa_dyn_string_clear;
+ __cxa_dyn_string_copy_cstr;
+ __cxa_dyn_string_copy;
+ __cxa_dyn_string_delete;
+ __cxa_dyn_string_eq;
+ __cxa_dyn_string_init;
+ __cxa_dyn_string_insert_char;
+ __cxa_dyn_string_insert_cstr;
+ __cxa_dyn_string_insert;
+ __cxa_dyn_string_new;
+ __cxa_dyn_string_prepend_cstr;
+ __cxa_dyn_string_prepend;
+ __cxa_dyn_string_release;
+ __cxa_dyn_string_resize;
+ __cxa_dyn_string_substring;
+ __cxa_end_catch;
+ __cxa_free_exception;
+ __cxa_get_globals;
+ __cxa_get_globals_fast;
+ __cxa_pure_virtual;
+ __cxa_rethrow;
+ __cxa_throw;
+ __cxa_vec_cctor;
+ __cxa_vec_cleanup;
+ __cxa_vec_ctor;
+ __cxa_vec_delete2;
+ __cxa_vec_delete3;
+ __cxa_vec_delete;
+ __cxa_vec_dtor;
+ __cxa_vec_new2;
+ __cxa_vec_new3;
+ __cxa_vec_new;
__gxx_personality_v0;
__gxx_personality_sj0;
__dynamic_cast;
local:
*;
};
+
+# Symbols added after CXXABI_1.2
+CXXABI_1.2.1 {
+
+ __cxa_guard_acquire;
+ __cxa_guard_release;
+ __cxa_guard_abort;
+
+} CXXABI_1.2;
\ No newline at end of file
demangle(const std::string& mangled)
{
const char* name;
- if (mangled[0] != '_' && mangled[1] != 'Z')
+ if (mangled[0] != '_' || mangled[1] != 'Z')
{
// This is not a mangled symbol, thus has "C" linkage.
name = mangled.c_str();
{
vector<string> compatible_versions;
compatible_versions.push_back("GLIBCPP_3.2.1");
+ compatible_versions.push_back("CXXABI_1.2.1");
symbol_info test = test_symbols[added_names[i]];
vector<string>::iterator end = compatible_versions.end();