]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/boost/atomic/detail/ops_emulated.hpp
update sources to ceph Nautilus 14.2.1
[ceph.git] / ceph / src / boost / boost / atomic / detail / ops_emulated.hpp
index 437b62f31177f686ac6a02fd0b2e4597b9ff2eba..f30fbdab9f7adca0341600fd4ffc2ee3f4a86d6b 100644 (file)
@@ -30,10 +30,15 @@ namespace boost {
 namespace atomics {
 namespace detail {
 
-template< typename T >
+template< std::size_t Size, bool Signed >
 struct emulated_operations
 {
-    typedef T storage_type;
+    typedef typename make_storage_type< Size >::type storage_type;
+    typedef typename make_storage_type< Size >::aligned aligned_storage_type;
+
+    static BOOST_CONSTEXPR_OR_CONST std::size_t storage_size = Size;
+    static BOOST_CONSTEXPR_OR_CONST bool is_signed = Signed;
+    static BOOST_CONSTEXPR_OR_CONST bool full_cas_based = false;
 
     static BOOST_CONSTEXPR_OR_CONST bool is_always_lock_free = false;
 
@@ -146,12 +151,8 @@ struct emulated_operations
 
 template< std::size_t Size, bool Signed >
 struct operations :
-    public emulated_operations< typename make_storage_type< Size, Signed >::type >
+    public emulated_operations< Size, Signed >
 {
-    typedef typename make_storage_type< Size, Signed >::aligned aligned_storage_type;
-
-    static BOOST_CONSTEXPR_OR_CONST std::size_t storage_size = Size;
-    static BOOST_CONSTEXPR_OR_CONST bool is_signed = Signed;
 };
 
 } // namespace detail