This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Destructor support for C++11 thread_local variables
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: Siddhesh Poyarekar <siddhesh at redhat dot com>
- Cc: <libc-alpha at sourceware dot org>, Jakub Jelinek <jakub at redhat dot com>, JasonMerrill <jason at redhat dot com>
- Date: Wed, 10 Oct 2012 15:51:42 +0000
- Subject: Re: [PATCH] Destructor support for C++11 thread_local variables
- References: <20121010210546.7322c6fa@spoyarek>
On Wed, 10 Oct 2012, Siddhesh Poyarekar wrote:
> ChangeLog:
>
> * include/stdlib.h (__cxa_thread_atexit_impl): Declare.
> (__call_tls_dtors): Likewise.
> * stdlib/Makefile (routines): Add __cxa_thread_atexit_impl.
> * stdlib/Versions (GLIBC_2.17): Likewise.
Since you're adding a new public symbol, I'd have expected your testing to
fail because the patch isn't updating the ABI baselines. They should be
updated at least for all libc architectures (preferably for all
architectures).
(Note on the baselines: I thought the symbols for each version were in
ASCII collation order, meaning that __cxa_thread_atexit_impl should be
*before* secure_getenv under GLIBC_2.17 for each architecture. But
sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist is listing
__ppc_get_timebase_freq *after* secure_getenv. I don't know whether that
indicates some other order is in use or that the order doesn't actually
matter, or whether the addition to that ABI baseline of
__ppc_get_timebase_freq was untested. For the corresponding ports update
I just followed the libc change mechanically.)
--
Joseph S. Myers
joseph@codesourcery.com