Change basic_waitable_timer::async_wait to have an rvalue ref-qualified completion signature.
diff --git a/asio/include/asio/basic_waitable_timer.hpp b/asio/include/asio/basic_waitable_timer.hpp
index 417b818..8356e86 100644
--- a/asio/include/asio/basic_waitable_timer.hpp
+++ b/asio/include/asio/basic_waitable_timer.hpp
@@ -748,15 +748,17 @@
* manner equivalent to using asio::post().
*/
template <
- ASIO_COMPLETION_TOKEN_FOR(void (asio::error_code))
- WaitHandler ASIO_DEFAULT_COMPLETION_TOKEN_TYPE(executor_type)>
+ ASIO_COMPLETION_TOKEN_FOR(
+ void (asio::error_code) ASIO_RVALUE_REF_QUAL)
+ WaitHandler ASIO_DEFAULT_COMPLETION_TOKEN_TYPE(executor_type)>
ASIO_INITFN_AUTO_RESULT_TYPE(WaitHandler,
- void (asio::error_code))
+ void (asio::error_code) ASIO_RVALUE_REF_QUAL)
async_wait(
ASIO_MOVE_ARG(WaitHandler) handler
ASIO_DEFAULT_COMPLETION_TOKEN(executor_type))
{
- return async_initiate<WaitHandler, void (asio::error_code)>(
+ return async_initiate<WaitHandler,
+ void (asio::error_code) ASIO_RVALUE_REF_QUAL>(
initiate_async_wait(this), handler);
}