forked from boostorg/system
Disable use of <shared_mutex> under the XP toolsets (v140_xp and v141_xp). Fixes #110.
This commit is contained in:
@ -31,7 +31,9 @@ struct mutex
|
|||||||
} // namespace system
|
} // namespace system
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#elif defined(BOOST_MSSTL_VERSION) && BOOST_MSSTL_VERSION >= 140
|
#else // defined(BOOST_SYSTEM_DISABLE_THREADS)
|
||||||
|
|
||||||
|
#if defined(BOOST_MSSTL_VERSION) && BOOST_MSSTL_VERSION >= 140
|
||||||
|
|
||||||
// Under the MS STL, std::mutex::mutex() is not constexpr, as is
|
// Under the MS STL, std::mutex::mutex() is not constexpr, as is
|
||||||
// required by the standard, which leads to initialization order
|
// required by the standard, which leads to initialization order
|
||||||
@ -40,6 +42,14 @@ struct mutex
|
|||||||
|
|
||||||
#include <shared_mutex>
|
#include <shared_mutex>
|
||||||
|
|
||||||
|
#if BOOST_MSSTL_VERSION >= 142 || _HAS_SHARED_MUTEX
|
||||||
|
# define BOOST_SYSTEM_HAS_MSSTL_SHARED_MUTEX
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(BOOST_SYSTEM_HAS_MSSTL_SHARED_MUTEX)
|
||||||
|
|
||||||
namespace boost
|
namespace boost
|
||||||
{
|
{
|
||||||
namespace system
|
namespace system
|
||||||
@ -53,7 +63,7 @@ typedef std::shared_mutex mutex;
|
|||||||
} // namespace system
|
} // namespace system
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#else
|
#else // defined(BOOST_SYSTEM_HAS_MSSTL_SHARED_MUTEX)
|
||||||
|
|
||||||
#include <mutex>
|
#include <mutex>
|
||||||
|
|
||||||
@ -70,7 +80,8 @@ using std::mutex;
|
|||||||
} // namespace system
|
} // namespace system
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif
|
#endif // defined(BOOST_SYSTEM_HAS_MSSTL_SHARED_MUTEX)
|
||||||
|
#endif // defined(BOOST_SYSTEM_DISABLE_THREADS)
|
||||||
|
|
||||||
namespace boost
|
namespace boost
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user