tweak usize::MAX

pull/10/head
Alexis Beingessner 9 years ago committed by Manish Goregaokar
parent 790f27eeab
commit 70ca9a635f

@ -863,8 +863,8 @@ method of RawVec.
impl<T> RawVec<T> { impl<T> RawVec<T> {
fn new() -> Self { fn new() -> Self {
unsafe { unsafe {
// -1 is usize::MAX. This branch should be stripped at compile time. // !0 is usize::MAX. This branch should be stripped at compile time.
let cap = if mem::size_of::<T>() == 0 { -1 } else { 0 }; let cap = if mem::size_of::<T>() == 0 { !0 } else { 0 };
// heap::EMPTY doubles as "unallocated" and "zero-sized allocation" // heap::EMPTY doubles as "unallocated" and "zero-sized allocation"
RawVec { ptr: Unique::new(heap::EMPTY as *mut T), cap: cap } RawVec { ptr: Unique::new(heap::EMPTY as *mut T), cap: cap }
@ -1036,8 +1036,8 @@ struct RawVec<T> {
impl<T> RawVec<T> { impl<T> RawVec<T> {
fn new() -> Self { fn new() -> Self {
unsafe { unsafe {
// -1 is usize::MAX. This branch should be stripped at compile time. // !0 is usize::MAX. This branch should be stripped at compile time.
let cap = if mem::size_of::<T>() == 0 { -1 } else { 0 }; let cap = if mem::size_of::<T>() == 0 { !0 } else { 0 };
// heap::EMPTY doubles as "unallocated" and "zero-sized allocation" // heap::EMPTY doubles as "unallocated" and "zero-sized allocation"
RawVec { ptr: Unique::new(heap::EMPTY as *mut T), cap: cap } RawVec { ptr: Unique::new(heap::EMPTY as *mut T), cap: cap }

Loading…
Cancel
Save