On 4/10/2017 10:35 AM, Paul Fultz II via Boost wrote:
On Apr 10, 2017, at 9:05 AM, Edward Diener via Boost
wrote: As a side note I would really like to see libraries, which are tailored for Boost, use the Boost Config C++ feature testing macros to put out preprocessor #error messages when a feature that it needs is not supported during compilation, rather than letting the compiler simply fail because the construct in code cannot be parsed at the C++ conformance level the code expects.
This should happen during configure step, so that the user gets an error before even building the library.
There is no "building the library" for header-only libraries in Boost. For non-header only libraries it is possible to use Boost Config's Build Time Configuration to determine whether or not the library can be built at all. I believe it should be possible to design a Boost Build jam file configuration facility, based on the check-target-builds rule, so that a Boost Build error is generated when the Boost Config C++ feature testing macros indicate the level of C++ compliance needed by a library is not met, but nobody has done that yet AFAIK.