On Mon, Jan 23, 2012 at 07:31:55PM +0100, Rainer Orth wrote:
> * There's quite a number of additions to 3.4.11:

Probably Solaris didn't have _GLIBCXX_HAS_GTHREADS support
before and now does?
config/abi/pre/*.ver isn't currently conditionalized in any way,
so I don't see an easy way to move these to GLIBCXX_3.4.17 just
for Solaris and not for others.

> +FUNC:_ZNKSt10lock_error4whatEv@@GLIBCXX_3.4.11
> +FUNC:_ZNSt18condition_variable10notify_allEv@@GLIBCXX_3.4.11
> +FUNC:_ZNSt18condition_variable10notify_oneEv@@GLIBCXX_3.4.11
> +FUNC:_ZNSt18condition_variable4waitERSt11unique_lockISt5mutexE@@GLIBCXX_3.4.11
> +FUNC:_ZNSt18condition_variableC1Ev@@GLIBCXX_3.4.11
> +FUNC:_ZNSt18condition_variableC2Ev@@GLIBCXX_3.4.11
> +FUNC:_ZNSt18condition_variableD1Ev@@GLIBCXX_3.4.11
> +FUNC:_ZNSt18condition_variableD2Ev@@GLIBCXX_3.4.11
> +FUNC:_ZNSt22condition_variable_anyC1Ev@@GLIBCXX_3.4.11
> +FUNC:_ZNSt22condition_variable_anyC2Ev@@GLIBCXX_3.4.11
> +FUNC:_ZNSt22condition_variable_anyD1Ev@@GLIBCXX_3.4.11
> +FUNC:_ZNSt22condition_variable_anyD2Ev@@GLIBCXX_3.4.11
> +FUNC:_ZNSt6thread15_M_start_threadESt10shared_ptrINS_10_Impl_baseEE@@GLIBCXX_3.4.11
> +FUNC:_ZNSt6thread4joinEv@@GLIBCXX_3.4.11
> +FUNC:_ZNSt6thread6detachEv@@GLIBCXX_3.4.11
> +FUNC:__once_proxy@@GLIBCXX_3.4.11
> +OBJECT:12:_ZTISt10lock_error@@GLIBCXX_3.4.11
> +OBJECT:15:_ZTSSt10lock_error@@GLIBCXX_3.4.11
> +OBJECT:20:_ZTVSt10lock_error@@GLIBCXX_3.4.11
> +OBJECT:24:_ZTISt10lock_error@@GLIBCXX_3.4.11
> +OBJECT:40:_ZTVSt10lock_error@@GLIBCXX_3.4.11
> 
> Apart from that, baselines with Sun as (emutls) and GNU as (native TLS)
> differ on Solaris 8:
> 
> --- baseline_symbols.txt        2012-01-23 19:01:03.590486000 +0100
> +++ baseline_symbols.txt.s8g    2012-01-23 19:03:38.063402000 +0100
> @@ -2176,0 +2177 @@
> +FUNC:_ZSt16__get_once_mutexv@@GLIBCXX_3.4.12
> @@ -2209,0 +2211 @@
> +FUNC:_ZSt23__get_once_functor_lockv@@GLIBCXX_3.4.11
> @@ -2212,0 +2215 @@
> +FUNC:_ZSt27__set_once_functor_lock_ptrPSt11unique_lockISt5mutexE@@GLIBCXX_3.4.12
> @@ -2649,0 +2653 @@
> +OBJECT:16:_ZSt14__once_functor@@GLIBCXX_3.4.11
> @@ -2715,2 +2718,0 @@
> -OBJECT:16:__emutls_v._ZSt11__once_call@@GLIBCXX_3.4.15
> -OBJECT:16:__emutls_v._ZSt15__once_callable@@GLIBCXX_3.4.15
> 
> This hasn't happened before.  While the additions with gas are ok, the
> removals are not.

libstdc++ with and without TLS support are simply not ABI compatible.

        Jakub

Reply via email to