|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r82410 - in trunk: boost/thread boost/thread/detail libs/thread/test/sync/mutual_exclusion/locks/unique_lock/cons
From: vicente.botet_at_[hidden]
Date: 2013-01-08 17:00:03
Author: viboes
Date: 2013-01-08 17:00:02 EST (Tue, 08 Jan 2013)
New Revision: 82410
URL: http://svn.boost.org/trac/boost/changeset/82410
Log:
Thread: Added BOOST_THREAD_NO_CXX11_HDR_TUPLE to wrokarround msvc 10.0 behavior providing <tuple> without move semantics
Text files modified:
trunk/boost/thread/detail/config.hpp | 9 +++++++--
trunk/boost/thread/lock_factories.hpp | 4 ++--
trunk/libs/thread/test/sync/mutual_exclusion/locks/unique_lock/cons/make_unique_locks_mutex_pass.cpp | 2 +-
3 files changed, 10 insertions(+), 5 deletions(-)
Modified: trunk/boost/thread/detail/config.hpp
==============================================================================
--- trunk/boost/thread/detail/config.hpp (original)
+++ trunk/boost/thread/detail/config.hpp 2013-01-08 17:00:02 EST (Tue, 08 Jan 2013)
@@ -69,8 +69,13 @@
#if defined BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX || defined BOOST_NO_CXX11_HDR_INITIALIZER_LIST
#define BOOST_THREAD_NO_CXX11_HDR_INITIALIZER_LIST
-//#elif defined __GNUC__ && (__GNUC__ < 4 || ( __GNUC__ == 4 && __GNUC_MINOR__ <= 6 ))
-//#define BOOST_THREAD_NO_CXX11_HDR_INITIALIZER_LIST
+#endif
+
+#if defined(BOOST_NO_CXX11_HDR_TUPLE) || defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
+#define BOOST_THREAD_NO_CXX11_HDR_TUPLE
+#elif defined _MSC_VER && _MSC_VER <= 1600
+// C++ features supported by VC++ 10 (aka 2010)
+#define BOOST_THREAD_NO_CXX11_HDR_TUPLE
#endif
/// BASIC_THREAD_ID
Modified: trunk/boost/thread/lock_factories.hpp
==============================================================================
--- trunk/boost/thread/lock_factories.hpp (original)
+++ trunk/boost/thread/lock_factories.hpp 2013-01-08 17:00:02 EST (Tue, 08 Jan 2013)
@@ -8,7 +8,7 @@
#include <boost/thread/lock_types.hpp>
#include <boost/thread/lock_algorithms.hpp>
-#if ! defined(BOOST_NO_CXX11_HDR_TUPLE)
+#if ! defined(BOOST_THREAD_NO_CXX11_HDR_TUPLE)
#include <tuple> // todo change to <boost/tuple.hpp> once Boost.Tuple or Boost.Fusion provides Move semantics.
#endif
#include <boost/config/abi_prefix.hpp>
@@ -39,7 +39,7 @@
{
return unique_lock<Lockable> (mtx, try_to_lock);
}
-#if ! defined(BOOST_NO_CXX11_HDR_TUPLE) && ! defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
+#if ! defined(BOOST_THREAD_NO_CXX11_HDR_TUPLE)
#if ! defined BOOST_NO_CXX11_VARIADIC_TEMPLATES
template <typename ...Lockable>
Modified: trunk/libs/thread/test/sync/mutual_exclusion/locks/unique_lock/cons/make_unique_locks_mutex_pass.cpp
==============================================================================
--- trunk/libs/thread/test/sync/mutual_exclusion/locks/unique_lock/cons/make_unique_locks_mutex_pass.cpp (original)
+++ trunk/libs/thread/test/sync/mutual_exclusion/locks/unique_lock/cons/make_unique_locks_mutex_pass.cpp 2013-01-08 17:00:02 EST (Tue, 08 Jan 2013)
@@ -15,7 +15,7 @@
#include <boost/thread/thread.hpp>
#include <boost/detail/lightweight_test.hpp>
-#if ! defined(BOOST_NO_CXX11_AUTO_DECLARATIONS) && ! defined BOOST_NO_CXX11_HDR_TUPLE && ! defined BOOST_NO_CXX11_RVALUE_REFERENCES
+#if ! defined(BOOST_NO_CXX11_AUTO_DECLARATIONS) && ! defined BOOST_THREAD_NO_CXX11_HDR_TUPLE && ! defined BOOST_NO_CXX11_RVALUE_REFERENCES
boost::mutex m1;
boost::mutex m2;
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk