Boost logo

Boost :

Subject: [boost] Feature macro for putting things in the std namespace
From: Mathias Gaunard (mathias.gaunard_at_[hidden])
Date: 2015-08-27 16:31:46

Hi all,

I'm working on providing support in Boost for a new standard library
provider, which happens to put some but not all of its symbols in the
'std' namespace.

As a result, opening the 'std' namespace and forward-declaring or
specializing things would not work.

It seems a number of Boost libraries do this (most notably
Boost.Container), with special code to deal with libc++ (since libc++
puts everything under an inline namespace).

I think it would make more sense to have a
BOOST_HAS_SYMBOLS_IN_STD_NAMESPACE feature macro that one could check to
tell whether it is possible or not to do that.

In the case of forward-declarations, the library would have to fall back
to including the appropriate headers if that feature macro is not set.

Is everyone on board with this?
Any recommendation for the name?

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