diff options
author | Paolo Carlini <pcarlini@suse.de> | 2007-10-17 21:21:13 +0000 |
---|---|---|
committer | Paolo Carlini <pcarlini@suse.de> | 2007-10-17 21:21:13 +0000 |
commit | adf0cdd5bcfdc67c8c8684ad18619f6f93190a5b (patch) | |
tree | 6061491e09d503d9f34170f470e2e09253649ff6 /libstdc++-v3/include/bits/cpp_type_traits.h | |
parent | eba33d886ef5f3779989bb1bc1c2e037771d0875 (diff) |
2007-10-17 Paolo Carlini <pcarlini@suse.de>
* include/bits/cpp_type_traits.h (__is_byte): Add.
* include/bits/stl_algobase.h (struct __fill, struct __fill_n,
__fill_aux, __fill_n_aux): Remove.
(__fill_a, __fill_n_a): Add.
(fill, fill_n): Adjust.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@129421 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include/bits/cpp_type_traits.h')
-rw-r--r-- | libstdc++-v3/include/bits/cpp_type_traits.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/libstdc++-v3/include/bits/cpp_type_traits.h b/libstdc++-v3/include/bits/cpp_type_traits.h index f3c71ac1be5..4948f6c8d85 100644 --- a/libstdc++-v3/include/bits/cpp_type_traits.h +++ b/libstdc++-v3/include/bits/cpp_type_traits.h @@ -353,6 +353,34 @@ _GLIBCXX_BEGIN_NAMESPACE(std) }; #endif + template<typename _Tp> + struct __is_byte + { + enum { __value = 0 }; + typedef __false_type __type; + }; + + template<> + struct __is_byte<char> + { + enum { __value = 1 }; + typedef __true_type __type; + }; + + template<> + struct __is_byte<signed char> + { + enum { __value = 1 }; + typedef __true_type __type; + }; + + template<> + struct __is_byte<unsigned char> + { + enum { __value = 1 }; + typedef __true_type __type; + }; + _GLIBCXX_END_NAMESPACE #endif //_CPP_TYPE_TRAITS_H |