aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/libstdc++-v3/include/std/type_traits
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/libstdc++-v3/include/std/type_traits')
-rw-r--r--gcc-4.9/libstdc++-v3/include/std/type_traits19
1 files changed, 19 insertions, 0 deletions
diff --git a/gcc-4.9/libstdc++-v3/include/std/type_traits b/gcc-4.9/libstdc++-v3/include/std/type_traits
index 9a5c06e9c..6f439f561 100644
--- a/gcc-4.9/libstdc++-v3/include/std/type_traits
+++ b/gcc-4.9/libstdc++-v3/include/std/type_traits
@@ -73,6 +73,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typedef integral_constant<_Tp, __v> type;
constexpr operator value_type() const { return value; }
#if __cplusplus > 201103L
+
+#define __cpp_lib_integral_constant_callable 201304
+
constexpr value_type operator()() const { return value; }
#endif
};
@@ -480,6 +483,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
struct is_function<_Res(_ArgTypes......) const volatile &&>
: public true_type { };
+#define __cpp_lib_is_null_pointer 201309
+
template<typename>
struct __is_null_pointer_helper
: public false_type { };
@@ -634,6 +639,15 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
: public integral_constant<bool, __is_polymorphic(_Tp)>
{ };
+#if __cplusplus > 201103L
+ /// is_final
+ #define __cpp_lib_is_final 201402L
+ template<typename _Tp>
+ struct is_final
+ : public integral_constant<bool, __is_final(_Tp)>
+ { };
+#endif
+
/// is_abstract
template<typename _Tp>
struct is_abstract
@@ -1451,6 +1465,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
};
#if __cplusplus > 201103L
+
+#define __cpp_lib_transformation_trait_aliases 201304
+
/// Alias template for remove_const
template<typename _Tp>
using remove_const_t = typename remove_const<_Tp>::type;
@@ -2048,6 +2065,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// Sfinae-friendly result_of implementation:
+#define __cpp_lib_result_of_sfinae 201210
+
// [func.require] paragraph 1 bullet 1:
struct __result_of_memfun_ref_impl
{