1 // Copyright (C) 2015 Vicente J. Botet Escriba 2 // 3 // Distributed under the Boost Software License, Version 1.0. (See accompanying 4 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 // 6 // 2013/10 Vicente J. Botet Escriba 7 // Creation. 8 #if 0 9 #ifndef BOOST_CSBL_QUEUE_HPP 10 #define BOOST_CSBL_QUEUE_HPP 11 12 #include <boost/config.hpp> 13 // MSVC has some trouble instantiating a non_copyable type 14 //C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\INCLUDE\xmemory0(606) : error C2248: 'non_copyable::non_copyable' : cannot access private member declared in class 'non_copyable' 15 // ..\libs\thread\test\sync\mutual_exclusion\queue_views\single_thread_pass.cpp(24) : see declaration of 'non_copyable::non_copyable' 16 // ..\libs\thread\test\sync\mutual_exclusion\queue_views\single_thread_pass.cpp(23) : see declaration of 'non_copyable' 17 // C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\INCLUDE\xmemory0(605) : while compiling class template member function 'void std::allocator<_Ty>::construct(_Ty *,const _Ty &)' 18 // with 19 // [ 20 // _Ty=non_copyable 21 // ] 22 #if defined BOOST_THREAD_USES_BOOST_QUEUE || defined BOOST_NO_CXX11_RVALUE_REFERENCES || (defined _MSC_VER && _MSC_FULL_VER < 180020827) 23 #ifndef BOOST_THREAD_USES_BOOST_QUEUE 24 #define BOOST_THREAD_USES_BOOST_QUEUE 25 #endif 26 #include <boost/container/queue.hpp> 27 #else 28 #include <queue> 29 #endif 30 31 namespace boost 32 { 33 namespace csbl 34 { 35 #if defined BOOST_THREAD_USES_BOOST_QUEUE 36 using ::boost::container::queue; 37 38 #else 39 using ::std::queue; 40 41 #endif 42 43 } 44 } 45 #endif // header 46 #endif 47