From: Alex Crichton Date: Fri, 5 Oct 2018 16:15:57 +0000 (-0700) Subject: Revert "Slightly refactor VecDeque implementation" X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=70ae43fee798ea7af56db31b4e43180ef42a4476;p=rust.git Revert "Slightly refactor VecDeque implementation" This reverts commit 6ce76acae455a32113116cd2f95f8076388fc2d3. --- diff --git a/src/liballoc/collections/vec_deque.rs b/src/liballoc/collections/vec_deque.rs index d49cb985774..571f35a2031 100644 --- a/src/liballoc/collections/vec_deque.rs +++ b/src/liballoc/collections/vec_deque.rs @@ -1024,7 +1024,7 @@ pub fn drain(&mut self, range: R) -> Drain iter: Iter { tail: drain_tail, head: drain_head, - ring: unsafe { self.buffer_as_slice() }, + ring: unsafe { self.buffer_as_mut_slice() }, }, } } @@ -2593,8 +2593,8 @@ fn from(other: VecDeque) -> Self { let mut right_offset = 0; for i in left_edge..right_edge { right_offset = (i - left_edge) % (cap - right_edge); - let src = right_edge + right_offset; - ptr::swap(buf.add(i), buf.add(src)); + let src: isize = (right_edge + right_offset) as isize; + ptr::swap(buf.add(i), buf.offset(src)); } let n_ops = right_edge - left_edge; left_edge += n_ops;