https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60976
--- Comment #15 from Jonathan Wakely <redi at gcc dot gnu.org> --- For the program in comment 5 most of the difference in compile-time is caused by the allocator-aware container requirements (additional constructors which need to be instantiated for every explicit instantiation in the program and more complicated definitions for copy/move/swap). These changes are required for C++11 conformance, and I don't see any obvious way to implement them without affecting compile times. There is also some increase in compile-time caused by extra 'noexcept' specifications added to lots of functions, especially iterator member functions and operators. Not all of those are required by the standard, but they are important nonetheless.