Handle arrays properly.
Support `std::allocator_traits::max_size`