
David Walthall wrote:
It seems like users should not be allowed to add to the boost:: namespace. Here is my reasoning: if users are allowed to add to the boost namespace, what happens when/if that library (to which the user is adding code) becomes part of the standard and is moved to std::? Either the rule against adding to std:: would need to be relaxed or user code would break when the library becomes part of std::.
Good point! Thanks for your feedback, David.
The only exception I can see is if it is a work-around for a compiler that isn't standards compliant since the compiler will (presumably) be updated and not need the work-around at the point that the library is added to the std:: namespace. (I'm not sure if this boost::swap issue falls under this exception.)
Yes, my question was really based upon the fact that for some compilers, the end user might want to add a boost::swap overload, because of missing compiler support for argument-dependent lookup (ADL). Anyway, I still want to see if we can somehow work around those ADL related compiler bugs within the boost::swap utility itself. But before doing so, I would like to see "test_adl_barrier" go green on the regression: http://www.boost.org/development/tests/trunk/developer/utility-swap_.html Which seems like just a matter of time :-) Kind regards, Niels