Boost logo

Boost :

From: Niall Douglas (s_sourceforge_at_[hidden])
Date: 2021-02-02 15:12:24

On 02/02/2021 15:01, Peter Dimov via Boost wrote:
> Niall Douglas wrote:
>> I seem to be having difficulty communicating this to anyone here, so
>> here's a godbolt:
> But you've provided a definition for thirdpartylib_nothidden. This is
> not the case under discussion. The case under discussion is making
> BOOST_SYMBOL_IMPORT imply _VISIBLE, which translates to a default
> visibility attribute on the _declaration_ of thirdpartylib_nothidden.

If the Boost library where BOOST_XXX_DECL = BOOST_SYMBOL_VISIBLE is
being applied has public headers which never, ever provide an
implementation for any function, then BOOST_XXX_DECL =
BOOST_SYMBOL_VISIBLE would not cause export of third party symbols in
consuming libraries.

I would be surprised if any such C++ library, let alone Boost library,
exists, however.

I would point out that if Boost.ProgramOptions fixes its exception types
not being BOOST_SYMBOL_VISIBLE, the principle problem the OP reported
goes away without further changes.

Changing the ABI signature of the entire of Boost I think is a radical
step needing public announcement for at least two Boost major releases
before implementation.


Boost list run by bdawes at, gregod at, cpdaniel at, john at