Boost logo

Boost :

From: vicente.botet (vicente.botet_at_[hidden])
Date: 2008-07-17 11:05:53


----- Original Message -----
From: "David Abrahams" <dave_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Wednesday, July 16, 2008 11:18 PM
Subject: Re: [boost] [1.36.0] Libraries with unmerged changes?

>>>From time to time I would expect the library to be extended
>> by adding new functions and perhaps new types into an existing
>> namespace. It has never occurred to me to that this could
>> break user code - but now that you mention it I suppose it could
>> if users had added their own stuff to the archive namespace.
>
> That is normally a no-no. However
>
> using namespace boost::archive;
> struct foo {};
>
> if boost::archive acquires a "foo" there will be ambiguity.
>
>> However,
>> I would probably consider this a user error in that it violates
>> the intention of name spaces to avoid just this problem.

Hi,

Is there a way the user can write their code to avoid this possible
ambiguity?
Is there a way the developper can add a new interface avoiding this possible
ambiguity on the user code?
How the C++ standard library does to avoid this kind of ambiguity in user
code?
Does this banish the use of using in user code if he/she wants to avoid
incompatibilities with newer releases?

Vicente


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk