Patchwork [libstdc++] : Fix PR/51673

login
register
mail settings
Submitter Benjamin Kosnik
Date Jan. 9, 2012, 11:38 p.m.
Message ID <20120109153825.416355fd@shotwell>
Download mbox | patch
Permalink /patch/135144/
State New
Headers show

Comments

Benjamin Kosnik - Jan. 9, 2012, 11:38 p.m.
This is ok, but I realized that some of the newer CXXABI symbols were
missing, so I added them as well and then checked all of this in. See
attached patch.

best,
Benjamin

Patch

2012-01-09  Kai Tietz  <ktietz@redhat.com>

	PR libstc++/51673 part 2
	* config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
	operators signature for LLP64 size_t, and adjusted signatures for
	mt-allocator using size_t.

2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstc++/51673 part 1
	* config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
	with gnu.ver.


diff --git a/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver b/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver
index 13f06ef..2bd23cd 100644
--- a/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver
+++ b/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver
@@ -1,6 +1,6 @@ 
 ## Linker script for GNU namespace versioning.
 ##
-## Copyright (C) 2002, 2003, 2004, 2005, 2007, 2009, 2011
+## Copyright (C) 2002, 2003, 2004, 2005, 2007, 2009, 2011, 2012
 ## Free Software Foundation, Inc.
 ##
 ## This file is part of the libstdc++ version 3 distribution.
@@ -42,9 +42,9 @@  GLIBCXX_7.0 {
     __once_proxy;
 
     # operator new(size_t)
-    _Znw[jm];
+    _Znw[jmy];
     # operator new(size_t, std::nothrow_t const&)
-    _Znw[jm]RKSt9nothrow_t;
+    _Znw[jmy]RKSt9nothrow_t;
 
     # operator delete(void*)
     _ZdlPv;
@@ -52,9 +52,9 @@  GLIBCXX_7.0 {
     _ZdlPvRKSt9nothrow_t;
 
     # operator new[](size_t)
-    _Zna[jm];
+    _Zna[jmy];
     # operator new[](size_t, std::nothrow_t const&)
-    _Zna[jm]RKSt9nothrow_t;
+    _Zna[jmy]RKSt9nothrow_t;
 
     # operator delete[](void*)
     _ZdaPv;
@@ -93,16 +93,16 @@  GLIBCXX_7.0 {
 
     # __gnu_cxx::__pool
     _ZN9__gnu_cxx3__76__poolILb[01]EE13_M_initializeEv;
-    _ZN9__gnu_cxx3__76__poolILb[01]EE16_M_reserve_blockE[jm][jm];
-    _ZN9__gnu_cxx3__76__poolILb[01]EE16_M_reclaim_blockEPc[jm];
+    _ZN9__gnu_cxx3__76__poolILb[01]EE16_M_reserve_blockE[jmy][jmy];
+    _ZN9__gnu_cxx3__76__poolILb[01]EE16_M_reclaim_blockEPc[jmy];
     _ZN9__gnu_cxx3__76__poolILb[01]EE10_M_destroyEv;
     _ZN9__gnu_cxx3__76__poolILb1EE16_M_get_thread_idEv;
 
-    _ZN9__gnu_cxx3__717__pool_alloc_base9_M_refillE[jm];    
-    _ZN9__gnu_cxx3__717__pool_alloc_base16_M_get_free_listE[jm];
+    _ZN9__gnu_cxx3__717__pool_alloc_base9_M_refillE[jmy];    
+    _ZN9__gnu_cxx3__717__pool_alloc_base16_M_get_free_listE[jmy];
     _ZN9__gnu_cxx3__717__pool_alloc_base12_M_get_mutexEv;
 
-    _ZN9__gnu_cxx3__79free_list6_M_getE[jm];
+    _ZN9__gnu_cxx3__79free_list6_M_getE[jmy];
     _ZN9__gnu_cxx3__79free_list8_M_clearEv;
 
     # __gnu_cxx::stdio_sync_filebuf
@@ -145,16 +145,19 @@  CXXABI_2.0 {
 
   global:
     __cxa_allocate_exception;
+    __cxa_allocate_dependent_exception;
     __cxa_bad_cast;
     __cxa_bad_typeid;
     __cxa_begin_catch;
     __cxa_begin_cleanup;
     __cxa_call_unexpected;
     __cxa_current_exception_type;
+    __cxa_deleted_virtual;
     __cxa_demangle;
     __cxa_end_catch;
     __cxa_end_cleanup;
     __cxa_free_exception;
+    __cxa_free_dependent_exception;
     __cxa_get_exception_ptr;
     __cxa_get_globals;
     __cxa_get_globals_fast;
@@ -199,6 +202,11 @@  CXXABI_2.0 {
     _ZSt17current_exceptionv;
     _ZSt17rethrow_exceptionNSt15__exception_ptr13exception_ptrE;
 
+    # std::nested_exception
+    _ZNSt16nested_exceptionD*;
+    _ZTISt16nested_exception;
+    _ZTVSt16nested_exception;
+
     # std::bad_function_call.
     _ZNSt17bad_function_callD*;
     _ZTISt17bad_function_call;
@@ -287,6 +295,11 @@  CXXABI_2.0 {
     _ZTIPDn;
     _ZTIPKDn;
 
+    # typeinfo for __int128 and unsigned __int128
+    _ZTI[no];
+    _ZTIP[no];
+    _ZTIPK[no];
+
     # virtual table
     _ZTVN10__cxxabiv117__array_type_infoE;
     _ZTVN10__cxxabiv117__class_type_infoE;