https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105838
--- Comment #15 from Jakub Jelinek <jakub at gcc dot gnu.org> --- So, do we want a new attribute on allocator to tell the compiler that it is a class whose methods don't care about the address of the object and it has trivial ctor and dtor and it is enough to construct it once instead of many times, or shall the C++ FE hardcode it for std::allocator template if it sees certain things in the header? Not constructing thousands of these would be nice. The temporary arrays might be a good idea for the more general case if we can't optimize it better.