I guess that std::vector uses allocator_traits::construct when it copy/moves the elements into the reallocated buffer. Then I think that it needs t
std::vector
allocator_traits::construct