diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2014-12-11 17:58:22 +0000 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2014-12-11 17:58:22 +0000 |
commit | b8c555ac7c30f83f0e81aa6207757059beef1890 (patch) | |
tree | ca2042ff8cca3622d9bccd5e0da2e4c17c756382 /libstdc++-v3 | |
parent | 7b31ff5e79c3574e68be568fb9fe9c8f537bc132 (diff) | |
download | gcc-b8c555ac7c30f83f0e81aa6207757059beef1890.zip gcc-b8c555ac7c30f83f0e81aa6207757059beef1890.tar.gz gcc-b8c555ac7c30f83f0e81aa6207757059beef1890.tar.bz2 |
3.cc: Only use a thread_local when __cxa_thread_atexit_impl is available.
* testsuite/30_threads/condition_variable/members/3.cc: Only use
a thread_local when __cxa_thread_atexit_impl is available.
From-SVN: r218638
Diffstat (limited to 'libstdc++-v3')
-rw-r--r-- | libstdc++-v3/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/30_threads/condition_variable/members/3.cc | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index ea6e332..7039613 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2014-12-11 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/30_threads/condition_variable/members/3.cc: Only use + a thread_local when __cxa_thread_atexit_impl is available. + 2014-12-10 Jonathan Wakely <jwakely@redhat.com> * include/bits/locale_facets.tcc (numpunct::_M_cache): Avoid calling diff --git a/libstdc++-v3/testsuite/30_threads/condition_variable/members/3.cc b/libstdc++-v3/testsuite/30_threads/condition_variable/members/3.cc index 0da545d..1788bcf 100644 --- a/libstdc++-v3/testsuite/30_threads/condition_variable/members/3.cc +++ b/libstdc++-v3/testsuite/30_threads/condition_variable/members/3.cc @@ -41,7 +41,12 @@ void func() { std::unique_lock<std::mutex> lock{mx}; std::notify_all_at_thread_exit(cv, std::move(lock)); +#if _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL + // Correct order of thread_local destruction needs __cxa_thread_atexit_impl static thread_local Inc inc; +#else + Inc inc; +#endif } int main() |