From 29aca83eb46cdc39dc695852ab30bb0ad06bea8f Mon Sep 17 00:00:00 2001 From: Ms2ger Date: Sat, 21 Mar 2015 10:34:15 +0100 Subject: [PATCH] Remove an unsafe function definition in __thread_local_inner. This fixes a build error when using thread_local!() in a deny(unsafe_code) scope in Servo for Android. --- src/libstd/thread_local/mod.rs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/libstd/thread_local/mod.rs b/src/libstd/thread_local/mod.rs index 08780292c88b1..380ac0c838e1f 100644 --- a/src/libstd/thread_local/mod.rs +++ b/src/libstd/thread_local/mod.rs @@ -205,15 +205,13 @@ macro_rules! __thread_local_inner { #[cfg(any(not(any(target_os = "macos", target_os = "linux")), target_arch = "aarch64"))] const _INIT: ::std::thread_local::__impl::KeyInner<$t> = { - unsafe extern fn __destroy(ptr: *mut u8) { - ::std::thread_local::__impl::destroy_value::<$t>(ptr); - } - ::std::thread_local::__impl::KeyInner { inner: ::std::cell::UnsafeCell { value: $init }, os: ::std::thread_local::__impl::OsStaticKey { inner: ::std::thread_local::__impl::OS_INIT_INNER, - dtor: ::std::option::Option::Some(__destroy as unsafe extern fn(*mut u8)), + dtor: ::std::option::Option::Some( + ::std::thread_local::__impl::destroy_value::<$t> + ), }, } };