]> git.lizzy.rs Git - rust.git/commitdiff
Add a better error message for #39364
authorOphir LOJKINE <pere.jobs@gmail.com>
Fri, 3 Sep 2021 10:14:55 +0000 (12:14 +0200)
committerGitHub <noreply@github.com>
Fri, 3 Sep 2021 10:14:55 +0000 (12:14 +0200)
There is a known bug in the implementation of mpsc channels in rust.
This adds a clearer error message when the bug occurs, so that developers don't lose too much time looking for the origin of the bug.
See https://github.com/rust-lang/rust/issues/39364

library/std/src/sync/mpsc/shared.rs

index 0c32e636a563357ce39cac0f6313c422b4915c1c..d4ee1b414d9b0faaa938a4dbc64d9c3f8ee325a5 100644 (file)
@@ -248,7 +248,7 @@ pub fn recv(&self, deadline: Option<Instant>) -> Result<T, Failure> {
     // Returns true if blocking should proceed.
     fn decrement(&self, token: SignalToken) -> StartResult {
         unsafe {
-            assert_eq!(self.to_wake.load(Ordering::SeqCst), 0);
+            assert_eq!(self.to_wake.load(Ordering::SeqCst), 0, "This is a known bug in rust. See https://github.com/rust-lang/rust/issues/39364");
             let ptr = token.cast_to_usize();
             self.to_wake.store(ptr, Ordering::SeqCst);