[cfe-commits] [libcxx] r133401 - /libcxx/trunk/include/type_traits

Howard Hinnant hhinnant at apple.com
Sun Jun 19 12:12:59 PDT 2011


Author: hhinnant
Date: Sun Jun 19 14:12:59 2011
New Revision: 133401

URL: http://llvm.org/viewvc/llvm-project?rev=133401&view=rev
Log:
Miscellaneous minor fixes in <type_traits>

Modified:
    libcxx/trunk/include/type_traits

Modified: libcxx/trunk/include/type_traits
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/type_traits?rev=133401&r1=133400&r2=133401&view=diff
==============================================================================
--- libcxx/trunk/include/type_traits (original)
+++ libcxx/trunk/include/type_traits Sun Jun 19 14:12:59 2011
@@ -818,7 +818,7 @@
 
 // has_virtual_destructor
 
-#ifdef __has_feature(has_virtual_destructor) || (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)
+#if __has_feature(has_virtual_destructor) || (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)
 
 template <class _Tp> struct _LIBCPP_VISIBLE has_virtual_destructor
     : public integral_constant<bool, __has_virtual_destructor(_Tp)> {};
@@ -1428,6 +1428,8 @@
                      >::type type;
 };
 
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+
 template <class _Tp>
 inline _LIBCPP_INLINE_VISIBILITY
 typename decay<_Tp>::type
@@ -1436,6 +1438,18 @@
     return _STD::forward<_Tp>(__t);
 }
 
+#else
+
+template <class _Tp>
+inline _LIBCPP_INLINE_VISIBILITY
+typename decay<_Tp>::type
+__decay_copy(const _Tp& __t)
+{
+    return _STD::forward<_Tp>(__t);
+}
+
+#endif
+
 template <class _MP, bool _IsMemberFuctionPtr, bool _IsMemberObjectPtr>
 struct __member_pointer_traits_imp
 {
@@ -2925,7 +2939,7 @@
 template <class ..._Args>
 auto
 __invoke(__any, _Args&& ...__args)
-    -> __nat;
+    -> __nat = delete;
 
 // bullets 1 and 2
 





More information about the cfe-commits mailing list