diff options
| author | Daniel Micay <danielmicay@gmail.com> | 2013-09-17 11:44:59 -0400 |
|---|---|---|
| committer | Daniel Micay <danielmicay@gmail.com> | 2013-09-17 11:54:37 -0400 |
| commit | befc561fa4f76b058fc4d9d14f7ed508df0cb272 (patch) | |
| tree | a4501190bcf795413fae44891619efd4a34f98b7 /src/libstd/rt/rc.rs | |
| parent | 29cdf58861b1054c899c911343ccd8b1af28151a (diff) | |
remove unnecessary transmutes
Diffstat (limited to 'src/libstd/rt/rc.rs')
| -rw-r--r-- | src/libstd/rt/rc.rs | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/libstd/rt/rc.rs b/src/libstd/rt/rc.rs index 0a6890f627b..2ba00c3a2fb 100644 --- a/src/libstd/rt/rc.rs +++ b/src/libstd/rt/rc.rs @@ -78,17 +78,14 @@ impl<T> Drop for RC<T> { assert!(self.refcount() > 0); unsafe { - // FIXME(#4330) Need self by value to get mutability. - let this: &mut RC<T> = cast::transmute_mut(self); - - match *this.get_mut_state() { + match *self.get_mut_state() { (ref mut count, _) => { *count = *count - 1 } } - if this.refcount() == 0 { - let _: ~(uint, T) = cast::transmute(this.p); + if self.refcount() == 0 { + let _: ~(uint, T) = cast::transmute(self.p); } } } |
