git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119906 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Howard Hinnant 2010-11-20 18:25:22 +00:00
parent 1468b668aa
commit f048fe3a09
4 changed files with 4 additions and 10 deletions

View File

@ -86,8 +86,6 @@
#if defined(__clang__)
#undef __STRICT_ANSI__
#define _LIBCPP_HAS_NO_ADVANCED_SFINAE
#define _LIBCPP_HAS_NO_TEMPLATE_ALIASES

View File

@ -240,7 +240,7 @@ struct __tuple_assignable_imp : public false_type {};
template <class _Tp0, class ..._Tp, class _Up0, class ..._Up>
struct __tuple_assignable_imp<true, __tuple_types<_Tp0, _Tp...>, __tuple_types<_Up0, _Up...>>
: 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> {};
template <>

View File

@ -1394,8 +1394,6 @@ public:
typedef decltype(declval<_Fn>()(declval<_ArgTypes>()...)) type;
};
#if 0
template <class _MP, class _Tp, class ..._Args>
struct __result_of_mp;
@ -1455,8 +1453,6 @@ class __result_of<_Fn(_Tp, _ArgTypes...), false> // _Fn must be member pointer
{
};
#endif // 0
// result_of
template <class _Fn, class ..._ArgTypes>

View File

@ -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&(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<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(const S*)>::type, const char&>::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(const S*)>::type, const char&>::value), "Error!");
}