about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMara Bos <m-ou.se@m-ou.se>2021-12-20 19:20:56 +0100
committerMara Bos <m-ou.se@m-ou.se>2022-03-05 11:39:03 +0100
commit36c904594ee0d3a311f720827025c293d071a006 (patch)
tree80f4fb3a57216eb30b04b1501578844ac16951c4
parent93c409d6e2924cdc936f3f834fc257f913b5911c (diff)
downloadrust-36c904594ee0d3a311f720827025c293d071a006.tar.gz
rust-36c904594ee0d3a311f720827025c293d071a006.zip
Add debug asserts in thread local cell set methods.
-rw-r--r--library/std/src/thread/local.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/library/std/src/thread/local.rs b/library/std/src/thread/local.rs
index 3e94c3d277d..f36a06efbbd 100644
--- a/library/std/src/thread/local.rs
+++ b/library/std/src/thread/local.rs
@@ -268,6 +268,8 @@ macro_rules! __thread_local_inner {
                         if let $crate::option::Option::Some(init) = _init {
                             if let $crate::option::Option::Some(value) = init.take() {
                                 return value;
+                            } else if $crate::cfg!(debug_assertions) {
+                                unreachable!("missing initial value");
                             }
                         }
                         __init()
@@ -341,6 +343,8 @@ macro_rules! __thread_local_inner {
                         if let $crate::option::Option::Some(init) = init {
                             if let $crate::option::Option::Some(value) = init.take() {
                                 return value;
+                            } else if $crate::cfg!(debug_assertions) {
+                                unreachable!("missing default value");
                             }
                         }
                         __init()