maligned::align_first
manually allocates with an alignment larger than T, and then uses Vec::from_raw_parts
on that allocation to get a Vec<T>
.
GlobalAlloc::dealloc
requires that the layout
argument must be the same layout that was used to allocate that block of memory.
When deallocating, Box
and Vec
may not respect the specified alignment and can cause undefined behavior.
{ "license": "CC0-1.0" }