File tree Expand file tree Collapse file tree 1 file changed +15
-2
lines changed
api/include/opentelemetry/nostd/absl/meta Expand file tree Collapse file tree 1 file changed +15
-2
lines changed Original file line number Diff line number Diff line change @@ -616,8 +616,21 @@ using common_type_t = typename std::common_type<T...>::type;
616616template <typename T>
617617using underlying_type_t = typename std::underlying_type<T>::type;
618618
619- template <typename T>
620- using result_of_t = typename std::result_of<T>::type;
619+ namespace type_traits_internal {
620+
621+ #if __cplusplus >= 201703L
622+ // std::result_of is deprecated (C++17) or removed (C++20)
623+ template <typename > struct result_of ;
624+ template <typename F, typename ... Args>
625+ struct result_of <F(Args...)> : std::invoke_result<F, Args...> {};
626+ #else
627+ template <typename F> using result_of = std::result_of<F>;
628+ #endif
629+
630+ } // namespace type_traits_internal
631+
632+ template <typename F>
633+ using result_of_t = typename type_traits_internal::result_of<F>::type;
621634
622635namespace type_traits_internal {
623636// In MSVC we can't probe std::hash or stdext::hash because it triggers a
You can’t perform that action at this time.
0 commit comments