https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62056
--- Comment #3 from Piotr Dziwinski <piotrdz at gmail dot com> --- (In reply to Jonathan Wakely from comment #2) > (In reply to Piotr Dziwinski from comment #1) > > I would also second the proposal to fix this issue by implementing flat > > version of std::tuple. Perhaps the existing std::tr1::tuple implementation > > can be re-used here? > > GCC's std::tr1:tuple is not a flat implementation, and does not conform to > the C++11 requirements, so no, that's not an option. Oh, you're right - somehow I got convinced that std::tr1::tuple was a flat implementation since it compiles so much faster. But this raises a question - why do the two recursive implementations have such different compile times? Perhaps by analyzing the differences between std::tr1::tuple and std::tuple, we can learn something to our advantage?