aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Kosnik <bkoz@redhat.com>2002-11-26 01:37:50 +0000
committerBenjamin Kosnik <bkoz@gcc.gnu.org>2002-11-26 01:37:50 +0000
commit8ecab601c35d3d735ef5b1bdf126e912d17520b9 (patch)
treebede3ae620340c2b26f208f435cb7fc5cb8751d6
parentb1455c558e80a696200f259871a0ebf16baa2d7d (diff)
downloadgcc-8ecab601c35d3d735ef5b1bdf126e912d17520b9.zip
gcc-8ecab601c35d3d735ef5b1bdf126e912d17520b9.tar.gz
gcc-8ecab601c35d3d735ef5b1bdf126e912d17520b9.tar.bz2
abi_check.cc: Add CXXABI_1.2.1 as compatible.
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. From-SVN: r59487
-rw-r--r--libstdc++-v3/ChangeLog6
-rw-r--r--libstdc++-v3/config/linker-map.gnu52
-rw-r--r--libstdc++-v3/testsuite/abi_check.cc3
3 files changed, 59 insertions, 2 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index fbf147f..fad3bb2 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,9 @@
+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>
diff --git a/libstdc++-v3/config/linker-map.gnu b/libstdc++-v3/config/linker-map.gnu
index f82002a..050376c 100644
--- a/libstdc++-v3/config/linker-map.gnu
+++ b/libstdc++-v3/config/linker-map.gnu
@@ -246,7 +246,48 @@ GLIBCPP_3.2.1 {
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;
@@ -257,3 +298,12 @@ CXXABI_1.2 {
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
diff --git a/libstdc++-v3/testsuite/abi_check.cc b/libstdc++-v3/testsuite/abi_check.cc
index c093cd5..420cf4e 100644
--- a/libstdc++-v3/testsuite/abi_check.cc
+++ b/libstdc++-v3/testsuite/abi_check.cc
@@ -134,7 +134,7 @@ const char*
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();
@@ -365,6 +365,7 @@ main(int argc, char** argv)
{
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();