$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
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
>> exception:
>>
>> 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
>> template.
>>
>> - Declarations from namespaces associated with the types of the
>> function arguments both from the instantiation context
>> (14.6.4.1) 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.
Robert Ramey