Issue #48: added std::move for pop() function of stack/queue/pqueue
[libcds.git] / cds / opt / options.h
index e78655bb02cfc2e57536cd8555ba1834cd2ef965..2b1c3ec6d5299b7d5d6b6134003bb50acba54219 100644 (file)
@@ -851,14 +851,14 @@ namespace cds { namespace opt {
             }
         };
 
-        /// \p opt::move_policy based on assignment operator
+        /// \p opt::move_policy based on move-assignment operator
         struct assignment_move_policy
         {
-            /// <tt> dest = src </tt>
+            /// <tt> dest = std::move( src ) </tt>
             template <typename T>
-            void operator()( T& dest, T const& src ) const
+            void operator()( T& dest, T&& src ) const
             {
-                dest = src;
+                dest = std::move( src );
             }
         };