about summary refs log tree commit diff
path: root/src/libsync
diff options
context:
space:
mode:
Diffstat (limited to 'src/libsync')
-rw-r--r--src/libsync/arc.rs6
-rw-r--r--src/libsync/mpsc_intrusive.rs8
-rw-r--r--src/libsync/raw.rs17
3 files changed, 15 insertions, 16 deletions
diff --git a/src/libsync/arc.rs b/src/libsync/arc.rs
index 226eb7afb5f..4dc965d5d84 100644
--- a/src/libsync/arc.rs
+++ b/src/libsync/arc.rs
@@ -13,7 +13,7 @@
  * between tasks.
  */
 
-use std::cast;
+use std::mem;
 use std::ptr;
 use std::rt::heap::exchange_free;
 use std::sync::atomics;
@@ -76,7 +76,7 @@ impl<T: Share + Send> Arc<T> {
             weak: atomics::AtomicUint::new(1),
             data: data,
         };
-        Arc { x: unsafe { cast::transmute(x) } }
+        Arc { x: unsafe { mem::transmute(x) } }
     }
 
     #[inline]
@@ -149,7 +149,7 @@ impl<T: Send + Share + Clone> Arc<T> {
         // reference count is guaranteed to be 1 at this point, and we required
         // the Arc itself to be `mut`, so we're returning the only possible
         // reference to the inner data.
-        unsafe { cast::transmute::<&_, &mut _>(self.deref()) }
+        unsafe { mem::transmute::<&_, &mut _>(self.deref()) }
     }
 }
 
diff --git a/src/libsync/mpsc_intrusive.rs b/src/libsync/mpsc_intrusive.rs
index 14dfa8417fa..acbb2982c90 100644
--- a/src/libsync/mpsc_intrusive.rs
+++ b/src/libsync/mpsc_intrusive.rs
@@ -33,7 +33,7 @@
 // http://www.1024cores.net/home/lock-free-algorithms
 //                         /queues/intrusive-mpsc-node-based-queue
 
-use std::cast;
+use std::mem;
 use std::sync::atomics;
 use std::ty::Unsafe;
 
@@ -97,7 +97,7 @@ impl<T: Send> Queue<T> {
     pub unsafe fn pop(&self) -> Option<*mut Node<T>> {
         let tail = *self.tail.get();
         let mut tail = if !tail.is_null() {tail} else {
-            cast::transmute(&self.stub)
+            mem::transmute(&self.stub)
         };
         let mut next = (*tail).next(atomics::Relaxed);
         if tail as uint == &self.stub as *DummyNode as uint {
@@ -116,7 +116,7 @@ impl<T: Send> Queue<T> {
         if tail != head {
             return None;
         }
-        let stub = cast::transmute(&self.stub);
+        let stub = mem::transmute(&self.stub);
         self.push(stub);
         next = (*tail).next(atomics::Relaxed);
         if !next.is_null() {
@@ -135,6 +135,6 @@ impl<T: Send> Node<T> {
         }
     }
     pub unsafe fn next(&self, ord: atomics::Ordering) -> *mut Node<T> {
-        cast::transmute::<uint, *mut Node<T>>(self.next.load(ord))
+        mem::transmute::<uint, *mut Node<T>>(self.next.load(ord))
     }
 }
diff --git a/src/libsync/raw.rs b/src/libsync/raw.rs
index 313720fa932..990aba3ebff 100644
--- a/src/libsync/raw.rs
+++ b/src/libsync/raw.rs
@@ -15,9 +15,8 @@
 //! `sync` crate which wrap values directly and provide safer abstractions for
 //! containing data.
 
-use std::cast;
 use std::kinds::marker;
-use std::mem::replace;
+use std::mem;
 use std::sync::atomics;
 use std::unstable::finally::Finally;
 
@@ -109,7 +108,7 @@ struct SemGuard<'a, Q> {
 impl<Q: Send> Sem<Q> {
     fn new(count: int, q: Q) -> Sem<Q> {
         let inner = unsafe {
-            cast::transmute(box SemInner {
+            mem::transmute(box SemInner {
                 waiters: WaitQueue::new(),
                 count: count,
                 blocked: q,
@@ -168,7 +167,7 @@ impl<Q: Send> Sem<Q> {
 impl<Q: Send> Drop for Sem<Q> {
     fn drop(&mut self) {
         let _waiters: Box<SemInner<Q>> = unsafe {
-            cast::transmute(self.inner)
+            mem::transmute(self.inner)
         };
         self.inner = 0 as *();
     }
@@ -317,8 +316,8 @@ impl<'a> Condvar<'a> {
                     // To avoid :broadcast_heavy, we make a new waitqueue,
                     // swap it out with the old one, and broadcast on the
                     // old one outside of the little-lock.
-                    queue = Some(replace(state.blocked.get_mut(condvar_id),
-                                               WaitQueue::new()));
+                    queue = Some(mem::replace(state.blocked.get_mut(condvar_id),
+                                              WaitQueue::new()));
                 } else {
                     out_of_bounds = Some(state.blocked.len());
                 }
@@ -578,7 +577,7 @@ impl<'a> RWLockWriteGuard<'a> {
         let lock = self.lock;
         // Don't run the destructor of the write guard, we're in charge of
         // things from now on
-        unsafe { cast::forget(self) }
+        unsafe { mem::forget(self) }
 
         let old_count = lock.read_count.fetch_add(1, atomics::Release);
         // If another reader was already blocking, we need to hand-off
@@ -626,7 +625,7 @@ mod tests {
     use arc::Arc;
     use super::{Semaphore, Mutex, RWLock, Condvar};
 
-    use std::cast;
+    use std::mem;
     use std::result;
     use std::task;
 
@@ -902,7 +901,7 @@ mod tests {
             let ptr: *int = &*sharedstate;
             task::spawn(proc() {
                 let sharedstate: &mut int =
-                    unsafe { cast::transmute(ptr) };
+                    unsafe { mem::transmute(ptr) };
                 access_shared(sharedstate, &x2, mode1, 10);
                 tx.send(());
             });