diff options
| author | bors <bors@rust-lang.org> | 2018-06-12 00:36:21 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2018-06-12 00:36:21 +0000 |
| commit | 4367e41ea2a105c373de27c2f080fc2527cc6927 (patch) | |
| tree | 9ca30ec2dbf3311f0a0d0d6275d5abca8f23fc1f /src/liballoc/arc.rs | |
| parent | f9944fde377b8b2575f96fff60f784eddce54002 (diff) | |
| parent | 7f0d54d98842c786ab7a140c17c3ea32aea6aead (diff) | |
| download | rust-4367e41ea2a105c373de27c2f080fc2527cc6927.tar.gz rust-4367e41ea2a105c373de27c2f080fc2527cc6927.zip | |
Auto merge of #51241 - glandium:globalalloc, r=sfackler,SimonSapin
Stabilize GlobalAlloc and #[global_allocator] This PR implements the changes discussed in https://github.com/rust-lang/rust/issues/49668#issuecomment-393263510 Fixes #49668 Fixes #27389 This does not change the default global allocator: #36963
Diffstat (limited to 'src/liballoc/arc.rs')
| -rw-r--r-- | src/liballoc/arc.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/liballoc/arc.rs b/src/liballoc/arc.rs index 4026b3ababa..e3369f0a5b5 100644 --- a/src/liballoc/arc.rs +++ b/src/liballoc/arc.rs @@ -519,7 +519,7 @@ impl<T: ?Sized> Arc<T> { if self.inner().weak.fetch_sub(1, Release) == 1 { atomic::fence(Acquire); - Global.dealloc(self.ptr.as_opaque(), Layout::for_value(self.ptr.as_ref())) + Global.dealloc(self.ptr.cast(), Layout::for_value(self.ptr.as_ref())) } } @@ -639,7 +639,7 @@ impl<T: Clone> ArcFromSlice<T> for Arc<[T]> { let slice = from_raw_parts_mut(self.elems, self.n_elems); ptr::drop_in_place(slice); - Global.dealloc(self.mem.as_opaque(), self.layout.clone()); + Global.dealloc(self.mem.cast(), self.layout.clone()); } } } @@ -1196,7 +1196,7 @@ impl<T: ?Sized> Drop for Weak<T> { if self.inner().weak.fetch_sub(1, Release) == 1 { atomic::fence(Acquire); unsafe { - Global.dealloc(self.ptr.as_opaque(), Layout::for_value(self.ptr.as_ref())) + Global.dealloc(self.ptr.cast(), Layout::for_value(self.ptr.as_ref())) } } } |
