forked from OSchip/llvm-project
parent
36590fc72a
commit
092980dd65
|
@ -86,8 +86,6 @@
|
||||||
|
|
||||||
#if defined(__clang__)
|
#if defined(__clang__)
|
||||||
|
|
||||||
#undef __STRICT_ANSI__
|
|
||||||
|
|
||||||
#define _LIBCPP_HAS_NO_ADVANCED_SFINAE
|
#define _LIBCPP_HAS_NO_ADVANCED_SFINAE
|
||||||
#define _LIBCPP_HAS_NO_TEMPLATE_ALIASES
|
#define _LIBCPP_HAS_NO_TEMPLATE_ALIASES
|
||||||
|
|
||||||
|
|
|
@ -240,7 +240,7 @@ struct __tuple_assignable_imp : public false_type {};
|
||||||
template <class _Tp0, class ..._Tp, class _Up0, class ..._Up>
|
template <class _Tp0, class ..._Tp, class _Up0, class ..._Up>
|
||||||
struct __tuple_assignable_imp<true, __tuple_types<_Tp0, _Tp...>, __tuple_types<_Up0, _Up...>>
|
struct __tuple_assignable_imp<true, __tuple_types<_Tp0, _Tp...>, __tuple_types<_Up0, _Up...>>
|
||||||
: public integral_constant<bool,
|
: public integral_constant<bool,
|
||||||
__is_assignable<_Up0&, _Tp0>::value &&
|
is_assignable<_Up0&, _Tp0>::value &&
|
||||||
__tuple_assignable_imp<true, __tuple_types<_Tp...>, __tuple_types<_Up...>>::value> {};
|
__tuple_assignable_imp<true, __tuple_types<_Tp...>, __tuple_types<_Up...>>::value> {};
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
|
|
|
@ -1394,8 +1394,6 @@ public:
|
||||||
typedef decltype(declval<_Fn>()(declval<_ArgTypes>()...)) type;
|
typedef decltype(declval<_Fn>()(declval<_ArgTypes>()...)) type;
|
||||||
};
|
};
|
||||||
|
|
||||||
#if 0
|
|
||||||
|
|
||||||
template <class _MP, class _Tp, class ..._Args>
|
template <class _MP, class _Tp, class ..._Args>
|
||||||
struct __result_of_mp;
|
struct __result_of_mp;
|
||||||
|
|
||||||
|
@ -1455,8 +1453,6 @@ class __result_of<_Fn(_Tp, _ArgTypes...), false> // _Fn must be member pointer
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // 0
|
|
||||||
|
|
||||||
// result_of
|
// result_of
|
||||||
|
|
||||||
template <class _Fn, class ..._ArgTypes>
|
template <class _Fn, class ..._ArgTypes>
|
||||||
|
|
|
@ -33,7 +33,7 @@ int main()
|
||||||
static_assert((std::is_same<std::result_of<S(int)>::type, short>::value), "Error!");
|
static_assert((std::is_same<std::result_of<S(int)>::type, short>::value), "Error!");
|
||||||
static_assert((std::is_same<std::result_of<S&(unsigned char, int&)>::type, double>::value), "Error!");
|
static_assert((std::is_same<std::result_of<S&(unsigned char, int&)>::type, double>::value), "Error!");
|
||||||
static_assert((std::is_same<std::result_of<PF1()>::type, bool>::value), "Error!");
|
static_assert((std::is_same<std::result_of<PF1()>::type, bool>::value), "Error!");
|
||||||
// static_assert(std::is_same<std::result_of<PMS(std::unique_ptr<S>, int)>::type, void>::value, "Error!");
|
static_assert((std::is_same<std::result_of<PMS(std::unique_ptr<S>, int)>::type, void>::value), "Error!");
|
||||||
// static_assert(std::is_same<std::result_of<PMD(S)>::type, char&&>::value, "Error!");
|
static_assert((std::is_same<std::result_of<PMD(S)>::type, char&&>::value), "Error!");
|
||||||
// static_assert(std::is_same<std::result_of<PMD(const S*)>::type, const char&>::value, "Error!");
|
static_assert((std::is_same<std::result_of<PMD(const S*)>::type, const char&>::value), "Error!");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue