diff options
author | paolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-10-30 22:22:38 +0000 |
---|---|---|
committer | paolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-10-30 22:22:38 +0000 |
commit | 05e233db51daa18364fd2804ed7f5d8711e90251 (patch) | |
tree | a04b7c494980daf1e707842254071519f28eb9a0 /libstdc++-v3/include/tr1/functional | |
parent | d1876d5a87739f656b911b9c91aece9d0547e7a2 (diff) | |
download | gcc-05e233db51daa18364fd2804ed7f5d8711e90251.tar.gz |
2006-10-30 Paolo Carlini <pcarlini@suse.de>
* include/tr1/tuple_iterate.h (tuple_size<tuple<> >::value): Provide
definition.
* include/tr1/functional (is_bind_expression<>::value,
is_placeholder<>::value, + various partial specializations): Likewise.
* include/tr1/array (tuple_size<array<> >::value): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118203 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include/tr1/functional')
-rw-r--r-- | libstdc++-v3/include/tr1/functional | 39 |
1 files changed, 22 insertions, 17 deletions
diff --git a/libstdc++-v3/include/tr1/functional b/libstdc++-v3/include/tr1/functional index ef85e5b7ab0..44d91542cbb 100644 --- a/libstdc++-v3/include/tr1/functional +++ b/libstdc++-v3/include/tr1/functional @@ -514,9 +514,10 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1) */ template<typename _Tp> struct is_bind_expression - { - static const bool value = false; - }; + { static const bool value = false; }; + + template<typename _Tp> + const bool is_bind_expression<_Tp>::value; /** * @brief Determines if the given type _Tp is a placeholder in a @@ -524,9 +525,10 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1) */ template<typename _Tp> struct is_placeholder - { - static const int value = 0; - }; + { static const int value = 0; }; + + template<typename _Tp> + const int is_placeholder<_Tp>::value; /** * @if maint @@ -543,9 +545,10 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1) */ template<int _Num> struct is_placeholder<_Placeholder<_Num> > - { - static const int value = _Num; - }; + { static const int value = _Num; }; + + template<int _Num> + const int is_placeholder<_Placeholder<_Num> >::value; /** * @if maint @@ -714,10 +717,11 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1) * @endif */ template<typename _Signature> - struct is_bind_expression<_Bind<_Signature> > - { - static const bool value = true; - }; + struct is_bind_expression<_Bind<_Signature> > + { static const bool value = true; }; + + template<typename _Signature> + const bool is_bind_expression<_Bind<_Signature> >::value; /** * @if maint @@ -725,10 +729,11 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1) * @endif */ template<typename _Result, typename _Signature> - struct is_bind_expression<_Bind_result<_Result, _Signature> > - { - static const bool value = true; - }; + struct is_bind_expression<_Bind_result<_Result, _Signature> > + { static const bool value = true; }; + + template<typename _Result, typename _Signature> + const bool is_bind_expression<_Bind_result<_Result, _Signature> >::value; /** * @brief Exception class thrown when class template function's |