Subject: [Boost-bugs] [Boost C++ Libraries] #10523: clang 3.4.2 (and greater) defines BOOST_NO_CXX11_SMART_PTR
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-09-22 12:09:38
#10523: clang 3.4.2 (and greater) defines BOOST_NO_CXX11_SMART_PTR
-------------------------------------+-------------------------------------
Reporter: Daniel C. Dillon | Type: Bugs
<dan@â¦> | Milestone: To Be Determined
Status: new | Version: Boost 1.56.0
Component: None | Keywords: clang
Severity: Showstopper | BOOST_NO_CXX11_SMART_PTR
-------------------------------------+-------------------------------------
Due to the following code in boost/config/stdlib/libstdcpp3.hpp
BOOST_NO_CXX11_SMART_PTR (among other things) is getting defined for clang
3.4.2 built with gcc-4.8.2 on CentOS 7. Apparently clang 3.4.2 defines
__GNUC__ as 4 and __GNUC_MINOR__ as 2.
The net effect is that no get_pointer is defined for std::shared_ptr and
boost::binds break down.
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 4) ||
!defined(__GXX_EXPERIMENTAL_CXX0X__)
# define BOOST_NO_CXX11_HDR_CONDITION_VARIABLE
# define BOOST_NO_CXX11_HDR_FORWARD_LIST
# define BOOST_NO_CXX11_HDR_INITIALIZER_LIST
# define BOOST_NO_CXX11_HDR_MUTEX
# define BOOST_NO_CXX11_HDR_RATIO
# define BOOST_NO_CXX11_HDR_SYSTEM_ERROR
# define BOOST_NO_CXX11_SMART_PTR
#else
# define BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG
# define BOOST_HAS_TR1_COMPLEX_OVERLOADS
#endif
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/10523> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:17 UTC