diff options
Diffstat (limited to 'components/cplusplus/cpp11/thread_local_impl.cpp')
| -rw-r--r-- | components/cplusplus/cpp11/thread_local_impl.cpp | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/components/cplusplus/cpp11/thread_local_impl.cpp b/components/cplusplus/cpp11/thread_local_impl.cpp deleted file mode 100644 index 43761c1e62..0000000000 --- a/components/cplusplus/cpp11/thread_local_impl.cpp +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) 2006-2021, RT-Thread Development Team - * - * SPDX-License-Identifier: Apache-2.0 - * - * Change Logs: - * Date Author Notes - * 2021-04-27 flybreak the first version. - */ - -#include <pthread.h> -#include <cstdlib> - -typedef void (*destructor) (void *); - -extern "C" -int __cxa_thread_atexit_impl(destructor dtor, void* obj, void* dso_symbol) -{ - pthread_key_t key_tmp; - if (pthread_key_create(&key_tmp, dtor) != 0) - abort(); - pthread_setspecific(key_tmp, obj); - return 0; -} - -#if defined(__GNUC__) && !defined(__ARMCC_VERSION)/*GCC*/ -#include <cxxabi.h> - -extern"C" -int __cxxabiv1::__cxa_thread_atexit(destructor dtor, void *obj, void *dso_handle) -{ - return __cxa_thread_atexit_impl(dtor, obj, dso_handle); -} -#endif |
