diff options
Diffstat (limited to 'gcc-4.9/libstdc++-v3/include/std/type_traits')
-rw-r--r-- | gcc-4.9/libstdc++-v3/include/std/type_traits | 19 |
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 { |