
"Tobias Schwinger" wrote
Andy Little wrote:
The current workaround is just to define the operators in global namespace for this compiler( I know its not legal! but it gets around the problem).
"using namespace boost::pqs" (on the user side) won't help?
I'm wondering if anyone else has found this sort of problem in VC8.0?
There's no ADL in BOOST_TYPEOF_TPL with MSVC8 (at least in some contexts, see http://tinyurl.com/7e6a6 -- the lack of ADL is only mentioned in a sidenote of the code, the thread is actually about even weirder MSVC8 behaviour in this context).
I have just been reading n1792 "A modest proposal fixing ADL". In it Herb Sutter states that only two compilers of those tried VC8 and Com4.3.3 do ADL correctly, so maybe this is behind your problems. Having said that I have put my types and their operations in the same namespace as recommended in the paper (though I havent practisd the 'defensive programming' mentioned there), and I'm still getting errors. regards Andy Little