]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/boost/intrusive/detail/array_initializer.hpp
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / boost / boost / intrusive / detail / array_initializer.hpp
index d9ed5bd97ae6c4fa39607e69d215ad33ed9a0e81..1b6a933294a7a94914761b86df6dafb9530787c2 100644 (file)
@@ -24,6 +24,7 @@
 #include <boost/config.hpp>
 #include <boost/core/no_exceptions_support.hpp>
 #include <boost/move/detail/placement_new.hpp>
+#include <boost/move/detail/force_ptr.hpp>
 
 namespace boost {
 namespace intrusive {
@@ -63,7 +64,7 @@ class array_initializer
       BOOST_CATCH(...){
          while(i--){
             init_buf -= sizeof(T);
-            ((T*)init_buf)->~T();
+            move_detail::force_ptr<T*>(init_buf)->~T();
          }
          BOOST_RETHROW;
       }
@@ -81,7 +82,7 @@ class array_initializer
       char *init_buf = (char*)rawbuf + N*sizeof(T);
       for(std::size_t i = 0; i != N; ++i){
          init_buf -= sizeof(T);
-         ((T*)init_buf)->~T();
+         move_detail::force_ptr<T*>(init_buf)->~T();
       }
    }