CEF3 msvc C++20 fix (#975)
* Create msvc_cpp20.patch * Update msvc_cpp20.patch * Add a patch to fix CEF3 when using msvc C++20pull/977/head
parent
a4909cd49c
commit
5a308fe05b
2 changed files with 20 additions and 0 deletions
@ -0,0 +1,18 @@ |
||||
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.
|
||||
//
|
Loading…
Reference in new issue