]> git.lizzy.rs Git - rust.git/commitdiff
Use as_mut_ptr instead of casts
authorPaul Dicker <pitdicker@gmail.com>
Sun, 24 Nov 2019 15:28:01 +0000 (16:28 +0100)
committerPaul Dicker <pitdicker@gmail.com>
Sun, 24 Nov 2019 15:49:50 +0000 (16:49 +0100)
src/libstd/lib.rs
src/libstd/sys/wasm/alloc.rs
src/libstd/sys/wasm/condvar_atomics.rs
src/libstd/sys/wasm/mutex_atomics.rs

index 927fd2a6b0bc6f2005dc8cd739124acb8c15505a..9846476388229780c829d2c4b84416716f927e3e 100644 (file)
 #![feature(allocator_internals)]
 #![feature(allow_internal_unsafe)]
 #![feature(allow_internal_unstable)]
+#![feature(atomic_mut_ptr)]
 #![feature(arbitrary_self_types)]
 #![feature(array_error_internals)]
 #![feature(asm)]
index c1af6ec12623c51bf7d9509b398f41e7452157d7..05e55334ac008a3164d532bd1d4e52e2efc75625 100644 (file)
@@ -67,7 +67,7 @@ pub fn lock() -> DropLock {
             //
             //     unsafe {
             //         let r = core::arch::wasm32::i32_atomic_wait(
-            //             &LOCKED as *const AtomicI32 as *mut i32,
+            //             LOCKED.as_mut_ptr(),
             //             1,  //     expected value
             //             -1, //     timeout
             //         );
@@ -143,7 +143,7 @@ fn drop(&mut self) {
             //
             //     unsafe {
             //         core::arch::wasm32::atomic_notify(
-            //             &LOCKED as *const AtomicI32 as *mut i32,
+            //             LOCKED.as_mut_ptr(),
             //             1, //     only one thread
             //         );
             //     }
index 580d21218445f34bbec26c09cbada498992b4b5f..f452bbd3487872206ca34d57cfc84fb4c4aef3bf 100644 (file)
@@ -89,6 +89,6 @@ pub unsafe fn destroy(&self) {
     #[inline]
     fn ptr(&self) -> *mut i32 {
         assert_eq!(mem::size_of::<usize>(), mem::size_of::<i32>());
-        &self.cnt as *const AtomicUsize as *mut i32
+        self.cnt.as_mut_ptr() as *mut i32
     }
 }
index 0e4f3d80aa93870341d82f32466e3cf0a3db8cd0..cddd584dd2207354373d10f9b11a08326f573492 100644 (file)
@@ -56,7 +56,7 @@ pub unsafe fn destroy(&self) {
     #[inline]
     fn ptr(&self) -> *mut i32 {
         assert_eq!(mem::size_of::<usize>(), mem::size_of::<i32>());
-        &self.locked as *const AtomicUsize as *mut isize as *mut i32
+        self.locked.as_mut_ptr() as *mut i32
     }
 }
 
@@ -145,6 +145,6 @@ pub unsafe fn destroy(&self) {
 
     #[inline]
     fn ptr(&self) -> *mut i32 {
-        &self.owner as *const AtomicU32 as *mut i32
+        self.owner.as_mut_ptr() as *mut i32
     }
 }