uninitialized_construct_using_allocator should use construct_at instead of operator new Proposed change: Effects: Equivalent to: <pre> return <del>::new(static_cast<void*>(p))</del> <ins>construct_at(p,</ins> <del>T</del>(make_obj_using_allocator<T>(alloc, std::forward<Args>(args)...))); </pre>