diff --git a/rtic-sync/src/channel.rs b/rtic-sync/src/channel.rs index aad02801f2..ee5ea9c183 100644 --- a/rtic-sync/src/channel.rs +++ b/rtic-sync/src/channel.rs @@ -38,6 +38,7 @@ pub struct Channel { } unsafe impl Send for Channel {} + unsafe impl Sync for Channel {} struct UnsafeAccess<'a, const N: usize> { @@ -124,8 +125,8 @@ pub enum TrySendError { } impl core::fmt::Debug for NoReceiver -where - T: core::fmt::Debug, + where + T: core::fmt::Debug, { fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { write!(f, "NoReceiver({:?})", self.0) @@ -133,8 +134,8 @@ where } impl core::fmt::Debug for TrySendError -where - T: core::fmt::Debug, + where + T: core::fmt::Debug, { fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { match self { @@ -145,8 +146,8 @@ where } impl PartialEq for TrySendError -where - T: PartialEq, + where + T: PartialEq, { fn eq(&self, other: &Self) -> bool { match (self, other) { @@ -176,6 +177,7 @@ impl LinkPtr { } unsafe impl Send for LinkPtr {} + unsafe impl Sync for LinkPtr {} impl<'a, T, const N: usize> core::fmt::Debug for Sender<'a, T, N> { @@ -299,7 +301,7 @@ impl<'a, T, const N: usize> Sender<'a, T, N> { Poll::Pending } }) - .await; + .await; // Make sure the link is removed from the queue. drop(dropper); @@ -429,7 +431,7 @@ impl<'a, T, const N: usize> Receiver<'a, T, N> { Poll::Pending }) - .await + .await } /// Returns true if there are no `Sender`s.