1f4117f518
The pointer in the slice must not be null, because enum representations make that assumption. The `exchange_malloc` function returns a non-null sentinel for the zero size case, and it must not be passed to the `exchange_free` lang item. Since the length is always equal to the true capacity, a branch on the length is enough for most types. Slices of zero size types are statically special cased to never attempt deallocation. This is the same implementation as `Vec<T>`. Closes #14395 |
||
---|---|---|
.. | ||
arc.rs | ||
boxed.rs | ||
heap.rs | ||
lib.rs | ||
libc_heap.rs | ||
rc.rs | ||
util.rs |