123456789101112131415161718 |
- diff --git a/include/base/cef_template_util.h b/include/base/cef_template_util.h
- index 02e2ead06..a77cf643a 100644
- --- a/include/base/cef_template_util.h
- +++ b/include/base/cef_template_util.h
- @@ -276,8 +276,13 @@ struct negation : bool_constant<!static_cast<bool>(B::value)> {};
- // References:
- // [1] https://en.cppreference.com/w/cpp/types/result_of
- // [2] https://wg21.link/meta.trans.other#lib:invoke_result
- +#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 201703L) || __cplusplus >= 201703L)
- +template <typename Functor, typename... Args>
- +using invoke_result = std::invoke_result<Functor, Args...>;
- +#else
- template <typename Functor, typename... Args>
- using invoke_result = std::result_of<Functor && (Args && ...)>;
- +#endif
-
- // Implementation of C++17's std::invoke_result_t.
- //
|