Boost logo

Boost :

Subject: Re: [boost] Reducing dependencies
From: Ion Gaztañaga (igaztanaga_at_[hidden])
Date: 2018-04-08 11:21:48


On 07/04/2018 15:24, Daniel James via Boost wrote:
> We can write tests if needed, but it won't be hard to work out which
> modules use the various parts of detail, so we can track their tests.
> Several headers are only used by one to two libraries.
>
> Another, possibly better, solution is to not use container_fwd.php. It
> doesn't do any good for libc++ and libstdc++ because of the way they
> use namespaces for versioning.

It's possible to handle that. I think forward declaration of those
containers might be possible and really useful. Pulling a std header is
really hard. The main problem is that in some libraries some elements
are in the std namespace and others in the inline namespace.

An example using std_ns_begin.hpp/std_ns_end.hpp forward declaring some
STL utilities:

https://github.com/boostorg/container/blob/develop/include/boost/container/detail/std_fwd.hpp

It's a hack, but a really useful one if you don't want to pull half STL
when writing a simple header.

Ion


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