aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include/bits/cpp_type_traits.h
diff options
context:
space:
mode:
Diffstat (limited to 'libstdc++-v3/include/bits/cpp_type_traits.h')
-rw-r--r--libstdc++-v3/include/bits/cpp_type_traits.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/libstdc++-v3/include/bits/cpp_type_traits.h b/libstdc++-v3/include/bits/cpp_type_traits.h
index f02caab0311..5ac9c98e704 100644
--- a/libstdc++-v3/include/bits/cpp_type_traits.h
+++ b/libstdc++-v3/include/bits/cpp_type_traits.h
@@ -364,6 +364,26 @@ namespace std
};
};
+ //
+ // A stripped-down version of std::tr1::is_empty
+ //
+ template<typename _Tp>
+ struct __is_empty
+ {
+ private:
+ template<typename>
+ struct __first { };
+ template<typename _Up>
+ struct __second
+ : public _Up { };
+
+ public:
+ enum
+ {
+ __value = sizeof(__first<_Tp>) == sizeof(__second<_Tp>)
+ };
+ };
+
} // namespace std
#endif //_CPP_TYPE_TRAITS_H