mirror of
https://github.com/boostorg/config.git
synced 2025-07-30 04:17:16 +02:00
Support for C++14 shared_mutex header
This commit is contained in:
@ -83,6 +83,10 @@
|
||||
# define BOOST_NO_CXX11_REF_QUALIFIERS
|
||||
# define BOOST_NO_CXX11_FINAL
|
||||
|
||||
// C++0y headers not yet implemented
|
||||
//
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
|
||||
// C++ 14:
|
||||
#if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304)
|
||||
# define BOOST_NO_CXX14_AGGREGATE_NSDMI
|
||||
|
@ -121,6 +121,10 @@
|
||||
#define BOOST_NO_CXX11_REF_QUALIFIERS
|
||||
#define BOOST_NO_CXX11_FINAL
|
||||
|
||||
// C++0y headers not yet implemented
|
||||
//
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
|
||||
// C++ 14:
|
||||
#if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304)
|
||||
# define BOOST_NO_CXX14_AGGREGATE_NSDMI
|
||||
|
@ -147,6 +147,21 @@
|
||||
# define BOOST_NO_CXX11_STD_ALIGN
|
||||
#endif
|
||||
|
||||
// C++0y headers not yet implemented
|
||||
//
|
||||
// I haven't been able to find any information
|
||||
// about what version of Dinkumware supports C++14.
|
||||
// The Dinkumware website says that they now support
|
||||
// C++14 but they give no further information about
|
||||
// their standard library. So I will mark the shared_mutex
|
||||
// header as unsupported until someone finds a version
|
||||
// of a compiler that uses the Dinkumware standard library
|
||||
// and they can see that shared_ptr is distributed in that
|
||||
// version and they can see the value of _CPPLIB_VER in rhat
|
||||
// version's yvals.h header file.
|
||||
//
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
|
||||
#if defined(BOOST_INTEL) && (BOOST_INTEL <= 1400)
|
||||
// Intel's compiler can't handle this header yet:
|
||||
# define BOOST_NO_CXX11_HDR_ATOMIC
|
||||
|
@ -62,6 +62,10 @@
|
||||
# define BOOST_NO_CXX11_STD_ALIGN
|
||||
# define BOOST_NO_CXX11_ADDRESSOF
|
||||
|
||||
// C++0y headers not yet implemented
|
||||
//
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
|
||||
//
|
||||
// Intrinsic type_traits support.
|
||||
// The SGI STL has it's own __type_traits class, which
|
||||
|
@ -219,6 +219,11 @@
|
||||
// Although <regex> is present and compilable against, the actual implementation is not functional
|
||||
// even for the simplest patterns such as "\d" or "[0-9]". This is the case at least in gcc up to 4.8, inclusively.
|
||||
# define BOOST_NO_CXX11_HDR_REGEX
|
||||
//
|
||||
// C++0y headers not yet implemented
|
||||
//
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
//
|
||||
#endif
|
||||
|
||||
#if defined(__clang_major__) && ((__clang_major__ < 3) || ((__clang_major__ == 3) && (__clang_minor__ < 7)))
|
||||
@ -254,6 +259,9 @@
|
||||
# ifndef BOOST_NO_CXX11_HDR_THREAD
|
||||
# define BOOST_NO_CXX11_HDR_THREAD
|
||||
# endif
|
||||
# ifndef BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if (!defined(_GTHREAD_USE_MUTEX_TIMEDLOCK) || (_GTHREAD_USE_MUTEX_TIMEDLOCK == 0)) && !defined(BOOST_NO_CXX11_HDR_MUTEX)
|
||||
|
@ -51,6 +51,10 @@
|
||||
# define BOOST_NO_CXX11_STD_ALIGN
|
||||
# define BOOST_NO_CXX11_ADDRESSOF
|
||||
|
||||
// C++0y headers not yet implemented
|
||||
//
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
|
||||
#define BOOST_STDLIB "Modena C++ standard library"
|
||||
|
||||
|
||||
|
@ -75,6 +75,10 @@
|
||||
# define BOOST_NO_CXX11_STD_ALIGN
|
||||
# define BOOST_NO_CXX11_ADDRESSOF
|
||||
|
||||
// C++0y headers not yet implemented
|
||||
//
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
|
||||
#define BOOST_STDLIB "Metrowerks Standard Library version " BOOST_STRINGIZE(__MSL_CPP__)
|
||||
|
||||
|
||||
|
@ -187,3 +187,6 @@
|
||||
# define BOOST_NO_CXX11_STD_ALIGN
|
||||
# define BOOST_NO_CXX11_ADDRESSOF
|
||||
|
||||
// C++0y headers not yet implemented
|
||||
//
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
@ -145,7 +145,8 @@
|
||||
# define BOOST_NO_CXX11_STD_ALIGN
|
||||
# define BOOST_NO_CXX11_ADDRESSOF
|
||||
|
||||
#define BOOST_STDLIB "SGI standard library"
|
||||
|
||||
|
||||
// C++0y headers not yet implemented
|
||||
//
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
|
||||
#define BOOST_STDLIB "SGI standard library"
|
@ -235,6 +235,10 @@ namespace boost { using std::min; using std::max; }
|
||||
# define BOOST_NO_CXX11_STD_ALIGN
|
||||
# define BOOST_NO_CXX11_ADDRESSOF
|
||||
|
||||
// C++0y headers not yet implemented
|
||||
//
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
|
||||
#define BOOST_STDLIB "STLPort standard library version " BOOST_STRINGIZE(__SGI_STL_PORT)
|
||||
|
||||
|
||||
|
@ -51,6 +51,10 @@
|
||||
# define BOOST_NO_CXX11_STD_ALIGN
|
||||
# define BOOST_NO_CXX11_ADDRESSOF
|
||||
|
||||
// C++0y headers not yet implemented
|
||||
//
|
||||
# define BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
|
||||
#define BOOST_STDLIB "Visual Age default standard library"
|
||||
|
||||
|
||||
|
24
test/boost_no_cxx14_hdr_shared_mutex.ipp
Normal file
24
test/boost_no_cxx14_hdr_shared_mutex.ipp
Normal file
@ -0,0 +1,24 @@
|
||||
// (C) Copyright Edward Diener 2015
|
||||
|
||||
// Use, modification and distribution are subject to the
|
||||
// Boost Software License, Version 1.0. (See accompanying file
|
||||
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
// See http://www.boost.org/libs/config for more information.
|
||||
|
||||
// MACRO: BOOST_NO_CXX14_HDR_SHARED_MUTEX
|
||||
// TITLE: C++0y header <shared_mutex> unavailable
|
||||
// DESCRIPTION: The standard library does not supply C++0y header <shared_mutex>
|
||||
|
||||
#include <shared_mutex>
|
||||
|
||||
namespace boost_no_cxx14_hdr_shared_mutex {
|
||||
|
||||
int test()
|
||||
{
|
||||
using std::shared_mutex;
|
||||
using std::shared_timed_mutex;
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user