File tree Expand file tree Collapse file tree 1 file changed +9
-3
lines changed
libcxx/include/__type_traits Expand file tree Collapse file tree 1 file changed +9
-3
lines changed Original file line number Diff line number Diff line change @@ -67,10 +67,16 @@ _LIBCPP_BEGIN_NAMESPACE_STD
67
67
template <class ... _Args>
68
68
using __invoke_result_t = decltype (__builtin_invoke(std::declval<_Args>()...));
69
69
70
+ template <class , class ... _Args>
71
+ struct __invoke_result_impl {};
72
+
70
73
template <class ... _Args>
71
- struct __invoke_result {
74
+ struct __invoke_result_impl < __void_t < __invoke_result_t <_Args...> >, _Args...> {
72
75
using type _LIBCPP_NODEBUG = __invoke_result_t <_Args...>;
73
- };
76
+ }
77
+
78
+ template <class ... _Args>
79
+ using __invoke_result = __invoke_result_impl<void , _Args...>;
74
80
75
81
template <class ... _Args>
76
82
_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR __invoke_result_t <_Args...> __invoke (_Args&&... __args)
@@ -353,7 +359,7 @@ struct __invoke_result
353
359
template <class _Func , class ... _Args>
354
360
using __invoke_result_t _LIBCPP_NODEBUG = typename __invoke_result<_Func, _Args...>::type;
355
361
356
- #if _LIBCPP_STD_VER >= 17
362
+ # if _LIBCPP_STD_VER >= 17
357
363
358
364
// is_invocable
359
365
You can’t perform that action at this time.
0 commit comments