Boost logo

Boost Users :

Subject: Re: [Boost-users] Config/compiler/visualc.hpp and traits
From: Glen Fernandes (glen.fernandes_at_[hidden])
Date: 2015-08-13 22:34:26


On 14/08/2015 9:47 p.m., Soul Studios wrote:
>
> On 14/08/2015 1:15 p.m., Glen Fernandes wrote:
>> Right now boost/config/stdlib/dinkumware.hpp has
>> BOOST_NO_CXX11_HDR_TYPE_TRAITS defined for Dinkumware versions 520 and
>> lower - i.e. that macro is would not be defined for VC11 and higher.
>
> Okay, I'm no good at understanding the sprawl of dependencies which
> constitute boost's macro defines, but I'll take your word for it.
> Why that particular C++11 macro define is in another file, while almost all
> the others are defined in the compiler-specific hpp, is beyond
> comprehension.

Standard library related macros are defined in the standard library
configuration header (i.e. config/stdlib not config/compiler). For VC,
this is dinkumware.h. That particular macro is not special; many
library-specific macros are defined in that header:
- BOOST_NO_CXX11_HDR_INITIALIZER_LIST
- BOOST_NO_CXX11_HDR_ATOMIC
- BOOST_NO_CXX11_STD_ALIGN
etc.

Language-specific macros are defined in the config/compiler headers - such as:
- BOOST_NO_CXX11_DELETED_FUNCTIONS
- BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
- BOOST_NO_CXX11_TEMPLATE_ALIASES
etc.

You should only ever include <boost/config.hpp> though.

See the documentation at: http://www.boost.org/libs/config

Best,
Glen


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