diff options
author | Ryan Prichard <rprichard@google.com> | 2024-02-28 04:32:55 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2024-02-28 04:32:55 +0000 |
commit | 7f6d4fd5f753e185622af658e21a7d42652bb312 (patch) | |
tree | 9ec3cfde551cd73d089cb70c79ff0674df76c42d | |
parent | d31e8c38a5f1435073516b78f5a047553cf8e4d2 (diff) | |
parent | 3307a6455e4da9520ac7bc3f10f972dab4d734be (diff) | |
download | grpc-grpc-7f6d4fd5f753e185622af658e21a7d42652bb312.tar.gz |
C++20 compat: use invoke_result_t instead of result_of am: 355831b13d am: 3307a6455e
Original change: https://android-review.googlesource.com/c/platform/external/grpc-grpc/+/2980335
Change-Id: I25c1f9e17a62965f98f00f354025edaefb57cf16
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | src/core/lib/promise/detail/promise_like.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/core/lib/promise/detail/promise_like.h b/src/core/lib/promise/detail/promise_like.h index 395c325873..70be971cc6 100644 --- a/src/core/lib/promise/detail/promise_like.h +++ b/src/core/lib/promise/detail/promise_like.h @@ -69,9 +69,16 @@ class PromiseLike; template <> class PromiseLike<void>; +// Android local modification: Android builds grpc with C++20, which removes +// std::result_of. Use std::invoke_result_t instead. template <typename F> class PromiseLike<F, absl::enable_if_t<!std::is_void< - typename std::result_of<F()>::type>::value>> { +#if __cplusplus >= 201703L + std::invoke_result_t<F> +#else + typename std::result_of<F()>::type +#endif + >::value>> { private: GPR_NO_UNIQUE_ADDRESS F f_; |