about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDavid Carlier <devnexen@gmail.com>2024-01-27 18:55:21 +0000
committerDavid Carlier <devnexen@gmail.com>2024-01-27 19:14:31 +0000
commit4c010259ef3c9eec239f5006dfdeffc73548cf07 (patch)
tree62f52bdf7ecafa75baea0ab4f0c1b665dcae021c
parent8af70c7a189195363d1786fcb6578451f890db81 (diff)
downloadrust-4c010259ef3c9eec239f5006dfdeffc73548cf07.tar.gz
rust-4c010259ef3c9eec239f5006dfdeffc73548cf07.zip
std: thread_local::register_dtor fix proposal for FreeBSD.
following-up 5d3d347 commit, rust started to spin
__cxa_thread_call_dtors warnings even without any TLS usage.
using instead home made TLS destructor handler `register_dtor_fallback`.

close #120413
-rw-r--r--library/std/src/sys/pal/unix/thread_local_dtor.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/library/std/src/sys/pal/unix/thread_local_dtor.rs b/library/std/src/sys/pal/unix/thread_local_dtor.rs
index 7e19e6eb9eb..4bf8f20670d 100644
--- a/library/std/src/sys/pal/unix/thread_local_dtor.rs
+++ b/library/std/src/sys/pal/unix/thread_local_dtor.rs
@@ -18,7 +18,6 @@
     target_os = "fuchsia",
     target_os = "redox",
     target_os = "hurd",
-    target_os = "freebsd",
     target_os = "netbsd",
     target_os = "dragonfly"
 ))]
@@ -118,7 +117,8 @@ pub unsafe fn register_dtor(t: *mut u8, dtor: unsafe extern "C" fn(*mut u8)) {
     target_os = "vxworks",
     target_os = "horizon",
     target_os = "emscripten",
-    target_os = "aix"
+    target_os = "aix",
+    target_os = "freebsd",
 ))]
 #[cfg_attr(target_family = "wasm", allow(unused))] // might remain unused depending on target details (e.g. wasm32-unknown-emscripten)
 pub unsafe fn register_dtor(t: *mut u8, dtor: unsafe extern "C" fn(*mut u8)) {