diff --git a/tokio-stream/src/stream_ext/take.rs b/tokio-stream/src/stream_ext/take.rs index c75648f6065..07b5c3d57ba 100644 --- a/tokio-stream/src/stream_ext/take.rs +++ b/tokio-stream/src/stream_ext/take.rs @@ -64,11 +64,11 @@ where let (lower, upper) = self.stream.size_hint(); - let lower = cmp::min(lower, self.remaining as usize); + let lower = cmp::min(lower, self.remaining); let upper = match upper { - Some(x) if x < self.remaining as usize => Some(x), - _ => Some(self.remaining as usize), + Some(x) if x < self.remaining => Some(x), + _ => Some(self.remaining), }; (lower, upper) diff --git a/tokio-util/src/compat.rs b/tokio-util/src/compat.rs index 6a8802d9699..7b9de8db2f9 100644 --- a/tokio-util/src/compat.rs +++ b/tokio-util/src/compat.rs @@ -232,7 +232,7 @@ impl futures_io::AsyncSeek for Compat { } let res = ready!(self.as_mut().project().inner.poll_complete(cx)); *self.as_mut().project().seek_pos = None; - Poll::Ready(res.map(|p| p as u64)) + Poll::Ready(res) } } @@ -255,7 +255,7 @@ impl tokio::io::AsyncSeek for Compat { }; let res = ready!(self.as_mut().project().inner.poll_seek(cx, pos)); *self.as_mut().project().seek_pos = None; - Poll::Ready(res.map(|p| p as u64)) + Poll::Ready(res) } } diff --git a/tokio/src/time/instant.rs b/tokio/src/time/instant.rs index f18492930a7..59ae32df983 100644 --- a/tokio/src/time/instant.rs +++ b/tokio/src/time/instant.rs @@ -188,7 +188,7 @@ impl ops::Sub for Instant { type Output = Instant; fn sub(self, rhs: Duration) -> Instant { - Instant::from_std(self.std - rhs) + Instant::from_std(self.std.checked_sub(rhs).unwrap()) } } diff --git a/tokio/src/util/slab.rs b/tokio/src/util/slab.rs index 0e16e40e99a..cc1208ebef4 100644 --- a/tokio/src/util/slab.rs +++ b/tokio/src/util/slab.rs @@ -560,7 +560,7 @@ impl Slots { assert!(slot >= base, "unexpected pointer"); let idx = (slot - base) / width; - assert!(idx < self.slots.len() as usize); + assert!(idx < self.slots.len()); idx }