From: Robert Ramey (ramey_at_[hidden])
Date: 2005-09-08 19:26:33
David Abrahams wrote:
> David Abrahams <dave_at_[hidden]> writes:
>>> Well it wasn't obvious to me. Its still not. It just compiled on
>>> my comeau
>>> 4.3 without error.
>>> I always thought that compiler was conforming. Oh well.
>> On Windows? That's normally in "microsoft bug emulation mode." Try
>> http://www.comeaucomputing.com/tryitout (I did!)
>> I hate having to go crawling through the standard just to find this
>> stuff, but for you, because I like you, kid, I make a special
>> 14.6.4 Dependent name resolution [temp.dep.res]
>> In resolving dependent names, names from the following sources
>> are considered:
>> - Declarations that are visible at the point of definition of the
>> - Declarations from namespaces associated with the types of the
>> function arguments both from the instantiation context
>> (126.96.36.199) and from the definition context.
To be honest, I'm still trying to parse this last sentence.
>> Unless one of the arguments has boost::serialization as an associated
>> namespace, only the first bullet point applies in this case. It
>> means that any overloads provided by the user after the
>> call_serialize function definition has been seen will not be
>> considered for overload resolution.
> Have I still failed to make my point? Did you not get this message?
> How hard are you going to make me work for this one?
Working harder won't help. I just need more time to think about this. I
don't know if you saw the documentation and code required to deal wih this
issue in version 1.32 but it was very messy. I invested effort which I
believe resulted in a major improvement. So far no one has come upon this
in practice and I'm curious to know why that might be.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk