]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/seastar/include/seastar/core/thread.hh
import quincy beta 17.1.0
[ceph.git] / ceph / src / seastar / include / seastar / core / thread.hh
index e5617b8dcc50a6d61abca5f94738b09595a3cac2..f85cca4ec2198a7b1086cab931b50ee9e65f4c5e 100644 (file)
@@ -239,9 +239,9 @@ thread::join() {
 /// \endcode
 template <typename Func, typename... Args>
 inline
-futurize_t<std::result_of_t<std::decay_t<Func>(std::decay_t<Args>...)>>
+futurize_t<std::invoke_result_t<Func, Args...>>
 async(thread_attributes attr, Func&& func, Args&&... args) noexcept {
-    using return_type = std::result_of_t<std::decay_t<Func>(std::decay_t<Args>...)>;
+    using return_type = std::invoke_result_t<Func, Args...>;
     struct work {
         thread_attributes attr;
         Func func;
@@ -276,7 +276,7 @@ async(thread_attributes attr, Func&& func, Args&&... args) noexcept {
 /// \return whatever \c func returns, as a future.
 template <typename Func, typename... Args>
 inline
-futurize_t<std::result_of_t<std::decay_t<Func>(std::decay_t<Args>...)>>
+futurize_t<std::invoke_result_t<Func, Args...>>
 async(Func&& func, Args&&... args) noexcept {
     return async(thread_attributes{}, std::forward<Func>(func), std::forward<Args>(args)...);
 }