We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent dfbe219 commit 449c839Copy full SHA for 449c839
libcxx/include/__type_traits/invoke.h
@@ -67,10 +67,16 @@ _LIBCPP_BEGIN_NAMESPACE_STD
67
template <class... _Args>
68
using __invoke_result_t = decltype(__builtin_invoke(std::declval<_Args>()...));
69
70
+template <class, class... _Args>
71
+struct __invoke_result_impl {};
72
+
73
-struct __invoke_result {
74
+struct __invoke_result_impl<__void_t<__invoke_result_t<_Args...> >, _Args...> {
75
using type _LIBCPP_NODEBUG = __invoke_result_t<_Args...>;
-};
76
+}
77
78
+template <class... _Args>
79
+using __invoke_result = __invoke_result_impl<void, _Args...>;
80
81
82
_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR __invoke_result_t<_Args...> __invoke(_Args&&... __args)
0 commit comments