Replace them by their cousins from std::allocator_traits. In addition to that, std::allocator<void> (used as default argument to the 'Alloc' template parameter of some public types) is deprecated too, and needs some sort of emulation. The emulation type is a mere placeholder without ever being used. Without that, heaps of deprecation warnings will fall onto humble users when compiling with MSVC 15 in C++17 mode.