diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2021-12-05 00:38:00 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-12-05 00:38:00 +0100 |
| commit | 23012b5200ec78dc519969b34c0342bfa53ea3c4 (patch) | |
| tree | 54770a648e163aff341732a456229523c0ea32e9 /library/std/src/thread | |
| parent | 4af985ac004fc0578cc6102f8e47844c227d0967 (diff) | |
| parent | a0c959750abec28bb875be492c5f0532920a8907 (diff) | |
| download | rust-23012b5200ec78dc519969b34c0342bfa53ea3c4.tar.gz rust-23012b5200ec78dc519969b34c0342bfa53ea3c4.zip | |
Rollup merge of #91355 - alexcrichton:stabilize-thread-local-const, r=m-ou-se
std: Stabilize the `thread_local_const_init` feature This commit is intended to follow the stabilization disposition of the FCP that has now finished in #84223. This stabilizes the ability to flag thread local initializers as `const` expressions which enables the macro to generate more efficient code for accessing it, notably removing runtime checks for initialization. More information can also be found in #84223 as well as the tests where the feature usage was removed in this PR. Closes #84223
Diffstat (limited to 'library/std/src/thread')
| -rw-r--r-- | library/std/src/thread/local.rs | 1 | ||||
| -rw-r--r-- | library/std/src/thread/mod.rs | 7 |
2 files changed, 0 insertions, 8 deletions
diff --git a/library/std/src/thread/local.rs b/library/std/src/thread/local.rs index 64c8416b61c..c03fe116320 100644 --- a/library/std/src/thread/local.rs +++ b/library/std/src/thread/local.rs @@ -178,7 +178,6 @@ macro_rules! __thread_local_inner { (@key $t:ty, const $init:expr) => {{ #[cfg_attr(not(windows), inline)] // see comments below unsafe fn __getit() -> $crate::option::Option<&'static $t> { - const _REQUIRE_UNSTABLE: () = $crate::thread::require_unstable_const_init_thread_local(); const INIT_EXPR: $t = $init; // wasm without atomics maps directly to `static mut`, and dtors diff --git a/library/std/src/thread/mod.rs b/library/std/src/thread/mod.rs index 343d3ef8dc5..64f6c7fa022 100644 --- a/library/std/src/thread/mod.rs +++ b/library/std/src/thread/mod.rs @@ -204,13 +204,6 @@ pub use self::local::os::Key as __OsLocalKeyInner; #[doc(hidden)] pub use self::local::statik::Key as __StaticLocalKeyInner; -// This is only used to make thread locals with `const { .. }` initialization -// expressions unstable. If and/or when that syntax is stabilized with thread -// locals this will simply be removed. -#[doc(hidden)] -#[unstable(feature = "thread_local_const_init", issue = "84223")] -pub const fn require_unstable_const_init_thread_local() {} - //////////////////////////////////////////////////////////////////////////////// // Builder //////////////////////////////////////////////////////////////////////////////// |
