std: simplify #[cfg]s for TLS · model-checking/verify-rust-std@bd3b9ec (original) (raw)

Original file line number Diff line number Diff line change
@@ -42,28 +42,23 @@ cfg_if::cfg_if! {
42 42
43 43 /// This module maintains a list of TLS destructors for the current thread,
44 44 /// all of which will be run on thread exit.
45 +#[cfg(all(target_thread_local, not(all(target_family = "wasm", not(target_feature = "atomics")))))]
45 46 pub(crate) mod destructors {
46 47 cfg_if::cfg_if! {
47 -if #[cfg(all(
48 - target_thread_local,
49 - any(
50 - target_os = "linux",
51 - target_os = "android",
52 - target_os = "fuchsia",
53 - target_os = "redox",
54 - target_os = "hurd",
55 - target_os = "netbsd",
56 - target_os = "dragonfly"
57 -)
48 +if #[cfg(any(
49 + target_os = "linux",
50 + target_os = "android",
51 + target_os = "fuchsia",
52 + target_os = "redox",
53 + target_os = "hurd",
54 + target_os = "netbsd",
55 + target_os = "dragonfly"
58 56 ))] {
59 57 mod linux;
60 58 mod list;
61 59 pub(super) use linux::register;
62 60 pub(super) use list::run;
63 -} else if #[cfg(all(
64 - target_thread_local,
65 - not(all(target_family = "wasm", not(target_feature = "atomics")))
66 -))] {
61 +} else {
67 62 mod list;
68 63 pub(super) use list::register;
69 64 pub(crate) use list::run;