summaryrefslogtreecommitdiffstats
path: root/vendor/futures-task/src/waker.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/futures-task/src/waker.rs')
-rw-r--r--vendor/futures-task/src/waker.rs10
1 files changed, 5 insertions, 5 deletions
diff --git a/vendor/futures-task/src/waker.rs b/vendor/futures-task/src/waker.rs
index a7310a07a..79112569c 100644
--- a/vendor/futures-task/src/waker.rs
+++ b/vendor/futures-task/src/waker.rs
@@ -20,7 +20,7 @@ pub fn waker<W>(wake: Arc<W>) -> Waker
where
W: ArcWake + 'static,
{
- let ptr = Arc::into_raw(wake) as *const ();
+ let ptr = Arc::into_raw(wake).cast::<()>();
unsafe { Waker::from_raw(RawWaker::new(ptr, waker_vtable::<W>())) }
}
@@ -31,7 +31,7 @@ where
#[allow(clippy::redundant_clone)] // The clone here isn't actually redundant.
unsafe fn increase_refcount<T: ArcWake>(data: *const ()) {
// Retain Arc, but don't touch refcount by wrapping in ManuallyDrop
- let arc = mem::ManuallyDrop::new(Arc::<T>::from_raw(data as *const T));
+ let arc = mem::ManuallyDrop::new(Arc::<T>::from_raw(data.cast::<T>()));
// Now increase refcount, but don't drop new refcount either
let _arc_clone: mem::ManuallyDrop<_> = arc.clone();
}
@@ -43,17 +43,17 @@ unsafe fn clone_arc_raw<T: ArcWake>(data: *const ()) -> RawWaker {
}
unsafe fn wake_arc_raw<T: ArcWake>(data: *const ()) {
- let arc: Arc<T> = Arc::from_raw(data as *const T);
+ let arc: Arc<T> = Arc::from_raw(data.cast::<T>());
ArcWake::wake(arc);
}
// used by `waker_ref`
unsafe fn wake_by_ref_arc_raw<T: ArcWake>(data: *const ()) {
// Retain Arc, but don't touch refcount by wrapping in ManuallyDrop
- let arc = mem::ManuallyDrop::new(Arc::<T>::from_raw(data as *const T));
+ let arc = mem::ManuallyDrop::new(Arc::<T>::from_raw(data.cast::<T>()));
ArcWake::wake_by_ref(&arc);
}
unsafe fn drop_arc_raw<T: ArcWake>(data: *const ()) {
- drop(Arc::<T>::from_raw(data as *const T))
+ drop(Arc::<T>::from_raw(data.cast::<T>()))
}