Of course, this means that push-tag on std::string is going to give you about a half dozen whacky alternatives because of the allocator templates and char_traits and basic_string and enable_if, and every other nasty thing that makes up std::string now. Although, I guess if it gets cut off at the typedef, then that won't be a problem, but this is just one example.