------- Comment #2 from redi at gcc dot gnu dot org 2010-06-25 11:55 ------- http://gcc.gnu.org/onlinedocs/libstdc++/faq.html#faq.other_compilers
If the guards were there as you suggest, tr1::tuple would only be usable in C++0x mode, where it's redundant because you have std::tuple anyway. g++ is the only compiler officially supported by libstdc++, so personally I'm opposed to disabling functionality to support other compilers. I'm not opposed to changes that don't affect functionality for g++ users e.g. if non-standard features are used unnecessarily and could be replaced with equivalent standard features. That doesn't apply here, as the advantages of variadic templates are huge. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44663