Ping^2: Re: [patch libstdc++]: Fix PR/51673

2012-01-09 Thread Kai Tietz
Ping

2012/1/5 Kai Tietz ktiet...@googlemail.com:
 Ping!

 2012/1/2 Paolo Carlini paolo.carl...@oracle.com:
 Hi,

 Hello,

 additionally to the suggested patch by Pawel Sikora, I added the
 adjustments for mt-allocator to it too.

 ChangeLog

 2012-01-01  Kai Tietzkti...@redhat.com

         PR libstc++/51673
       * 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.

 Tested for x86_64-w64-mingw32, and regression tested also for
 x86_64-unknown-linux-gnu.  Ok for apply to trunk and 4.6.x?

 Benjamin, can you have a look to this? I suspect the other established
 allocators (like, eg, pool) should be also dealt with, but I don't know
 versioned namespace well enough to properly review the patch.

 Thanks,
 Paolo.



 --
 |  (\_/) This is Bunny. Copy and paste
 | (='.'=) Bunny into your signature to help
 | ()_() him gain world domination



-- 
|  (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| ()_() him gain world domination


Re: [patch libstdc++]: Fix PR/51673

2012-01-09 Thread Benjamin Kosnik

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
2012-01-09  Kai Tietz  kti...@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  b...@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;


Re: [patch libstdc++]: Fix PR/51673

2012-01-05 Thread Kai Tietz
Ping!

2012/1/2 Paolo Carlini paolo.carl...@oracle.com:
 Hi,

 Hello,

 additionally to the suggested patch by Pawel Sikora, I added the
 adjustments for mt-allocator to it too.

 ChangeLog

 2012-01-01  Kai Tietzkti...@redhat.com

         PR libstc++/51673
       * 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.

 Tested for x86_64-w64-mingw32, and regression tested also for
 x86_64-unknown-linux-gnu.  Ok for apply to trunk and 4.6.x?

 Benjamin, can you have a look to this? I suspect the other established
 allocators (like, eg, pool) should be also dealt with, but I don't know
 versioned namespace well enough to properly review the patch.

 Thanks,
 Paolo.



-- 
|  (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| ()_() him gain world domination


[patch libstdc++]: Fix PR/51673

2012-01-01 Thread Kai Tietz
Hello,

additionally to the suggested patch by Pawel Sikora, I added the
adjustments for mt-allocator to it too.

ChangeLog

2012-01-01  Kai Tietz  kti...@redhat.com

PR libstc++/51673
  * 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.

Tested for x86_64-w64-mingw32, and regression tested also for
x86_64-unknown-linux-gnu.  Ok for apply to trunk and 4.6.x?

Kai

Index: gnu-versioned-namespace.ver
===
--- gnu-versioned-namespace.ver (revision 182720)
+++ gnu-versioned-namespace.ver (working copy)
@@ -42,9 +42,9 @@
 __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 @@
 _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 @@

 # __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


Re: [patch libstdc++]: Fix PR/51673

2012-01-01 Thread Paolo Carlini

Hi,

Hello,

additionally to the suggested patch by Pawel Sikora, I added the
adjustments for mt-allocator to it too.

ChangeLog

2012-01-01  Kai Tietzkti...@redhat.com

 PR libstc++/51673
   * 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.

Tested for x86_64-w64-mingw32, and regression tested also for
x86_64-unknown-linux-gnu.  Ok for apply to trunk and 4.6.x?
Benjamin, can you have a look to this? I suspect the other established 
allocators (like, eg, pool) should be also dealt with, but I don't know 
versioned namespace well enough to properly review the patch.


Thanks,
Paolo.