diff options
author | Jonathan Wakely <jwakely.gcc@gmail.com> | 2012-11-26 23:53:36 +0000 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2012-11-26 23:53:36 +0000 |
commit | 5895a897b5b05db6d53b3b5e68fad1d653abf209 (patch) | |
tree | 7caaf301a903fd0fca38a136ca3293bd00134a72 | |
parent | 5127244e4b172a5af7de329c0609971f8e181996 (diff) | |
download | gcc-5895a897b5b05db6d53b3b5e68fad1d653abf209.zip gcc-5895a897b5b05db6d53b3b5e68fad1d653abf209.tar.gz gcc-5895a897b5b05db6d53b3b5e68fad1d653abf209.tar.bz2 |
functional (__is_socketlike): Change from class template to alias template.
* include/std/functional (__is_socketlike): Change from class
template to alias template.
From-SVN: r193832
-rw-r--r-- | libstdc++-v3/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/include/std/functional | 10 |
2 files changed, 7 insertions, 8 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index f7f43fe..c6d0687 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,10 @@ 2012-11-26 Jonathan Wakely <jwakely.gcc@gmail.com> + * include/std/functional (__is_socketlike): Change from class + template to alias template. + +2012-11-26 Jonathan Wakely <jwakely.gcc@gmail.com> + PR libstdc++/55463 * include/std/functional (_Mem_fn): Handle rvalue objects. Add noexcept-specifications. diff --git a/libstdc++-v3/include/std/functional b/libstdc++-v3/include/std/functional index 1a98127..0d8fbd6 100644 --- a/libstdc++-v3/include/std/functional +++ b/libstdc++-v3/include/std/functional @@ -1503,14 +1503,8 @@ _GLIBCXX_HAS_NESTED_TYPE(result_type) // Trait type used to remove std::bind() from overload set via SFINAE // when first argument has integer type, so that std::bind() will // not be a better match than ::bind() from the BSD Sockets API. - template<typename _Tp> - class __is_socketlike - { - typedef typename decay<_Tp>::type _Tp2; - public: - static const bool value = - is_integral<_Tp2>::value || is_enum<_Tp2>::value; - }; + template<typename _Tp, typename _Tp2 = typename decay<_Tp>::type> + using __is_socketlike = __or_<is_integral<_Tp2>, is_enum<_Tp2>>; template<bool _SocketLike, typename _Func, typename... _BoundArgs> struct _Bind_helper |