
John Maddock wrote:
What do you think about having a macro to disable the extensions? Am I right in thinking that your main concern is that the extensions are in Boost.TR1?
I'm not sure that would work unfortunately: if I have one library that uses the TR1 <functional> and another that uses <boost/functional/hash.hpp> and then include both libraries in my code, will they both work? Which "version" of the hash lib do I get?
The extensions would only be disabled if the user defines the macro, I don't think they should be disabled by default. If you're worried about ODR conflicts they can easily be avoided. The only cost is that the class is now specialized for the types mentioned in TR1, instead of just having a single definition. Daniel