53 return std::unique_ptr<T[], aligned_deleter<T, A>>{};
54 std::unique_ptr<void, aligned_deleter<void, A>> raw{
56 {.size = size *
sizeof(T), .align = align},
58 auto *
uninitialized = std::launder(
static_cast<T *
>(raw.get()));
63 std::ignore = raw.release();
64 return std::unique_ptr<T[], aligned_deleter<T, A>>{
66 {.size = size, .align = align},