|
Boost Users : |
Subject: [Boost-users] Boost BCP namespace renaming : dispelling the FUD ?
From: BernardH (gmane.comp.lib.boost.user_at_[hidden])
Date: 2011-07-19 08:43:05
Hi,
When implementing a library, one might want to neither require nor prevent the
library users to also use any version of Boost.
I believed that BCP used with namespace renaming would allow the use of
(namespace-renamed) Boost in the implementation of such a library without *any*
concern about conflict at link time and / or rub-time errors if the library user
chooses to also use another Boost version.
However, I have been reading that Boost brings some symbols that cannot be
renamed because they are out of any namespace, with "C" linkage[*].
This brings the following questions :
1) can a list all such names be found ?
2) To be *completely safe*, must I :
2.1) only avoid using those symbols in my library
2.2) avoid the boost libaries that provide such symbols
2.3) avoid boost libraries that depend on such symbols (how am I to find out
which ?)
2.4) avoid boost libraries that depend on the boost libraries providing such
symbols (easier to do than 2.3 with bcp, I believe).
2.5) Despair ! (i.e. forgo boost usage under such constraints).
Boost is a great set of libraries, I think that it is a pity that a legitimate
concern (not imposing a specific Boost version on users) would prevent it's use
for implementing libraries : please, help me dispel the Fear, Uncertainty and
Doubt over this use case !
Best Regards,
Bernard
[*]
http://stackoverflow.com/questions/2907882/using-concurrently-2-versions-of-boost
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net