From: David Abrahams (dave_at_[hidden])
Date: 2005-04-08 01:11:24
"Thorsten Ottosen" <nesotto_at_[hidden]> writes:
> "David Abrahams" <dave_at_[hidden]> wrote in message
> | "Thorsten Ottosen" <nesotto_at_[hidden]> writes:
> | > "David Abrahams" <dave_at_[hidden]> wrote in message
> | > news:usm2379fu.fsf_at_boost-consulting.com...
> | > | "Thorsten Ottosen" <nesotto_at_[hidden]> writes:
> | > | I don't think you mean "primary template," do you? You're not talking
> | > | about using function template specialization are you?
> | >
> | > I just meant they all have a default version (the primary template)
> | > like
> | >
> | > template <class T >
> | > some_thing begin( T& r );
> | That's a misuse of the term "primary template," which has a specific
> | technical meaning. Why not just say "fully general overload?"
> I'm using the meaning defined in "C++ Templates" p. 100.
This is also a "primary template:"
template <class T, int N>
T* begin( T(&)[N] );
If you understand that, then I was wrong to say you're misusing the
term, and I just don't understand what distinction you were trying to
draw in using it.
> | > | > | to prevent unintended ADL, I think it's even less of a problem.
> | > | >
> | > | > IMO there is no such thing as unintended ADL during a call to
> | > | > boost::begin(). you always want it.
> | > |
> | > | By "unintended ADL" I mean what happens when the author of the begin()
> | > | function that ends up getting called never intended it to be found via
> | > | ADL for that particular argument type. I suppose I should have
> | > | written "unintended argument-dependent matching" or something.
> | >
> | > hm...I simply can't imagine somebody wanting that ADL should not
> | > kick in.
> | I don't see how you can say that and also worry about the "ADL lookup
> | problem." It has to be one or the other.
> maybe the concern is not needed. not changing anything is certainly
> easier for me
Well, I just don't know. I think we need more experience to be sure.
-- Dave Abrahams Boost Consulting www.boost-consulting.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk