diff options
author | Paolo Carlini <paolo.carlini@oracle.com> | 2010-10-04 17:28:24 +0000 |
---|---|---|
committer | Paolo Carlini <paolo@gcc.gnu.org> | 2010-10-04 17:28:24 +0000 |
commit | 6703f185d4ddf982349c9c884226e3c72ca50130 (patch) | |
tree | 66f681eb19877eb9b646e2ea861d10502c34b8b5 | |
parent | a90163e9737cf5384865d043954bfd3a51bb4e7c (diff) | |
download | gcc-6703f185d4ddf982349c9c884226e3c72ca50130.zip gcc-6703f185d4ddf982349c9c884226e3c72ca50130.tar.gz gcc-6703f185d4ddf982349c9c884226e3c72ca50130.tar.bz2 |
functional (function<>::swap): Use std::swap.
2010-10-04 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/functional (function<>::swap): Use std::swap.
* include/tr1/functional (function<>::swap): Likewise.
From-SVN: r164952
-rw-r--r-- | libstdc++-v3/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/include/std/functional | 12 | ||||
-rw-r--r-- | libstdc++-v3/include/tr1/functional | 12 |
3 files changed, 11 insertions, 18 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index a8259b0..6604d68 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2010-10-04 Paolo Carlini <paolo.carlini@oracle.com> + + * include/std/functional (function<>::swap): Use std::swap. + * include/tr1/functional (function<>::swap): Likewise. + 2010-10-04 Andreas Schwab <schwab@redhat.com> * acinclude.m4 (GLIBCXX_ENABLE): Properly quote argument to diff --git a/libstdc++-v3/include/std/functional b/libstdc++-v3/include/std/functional index d137f47..dcd7ab8 100644 --- a/libstdc++-v3/include/std/functional +++ b/libstdc++-v3/include/std/functional @@ -1940,15 +1940,9 @@ namespace std */ void swap(function& __x) { - _Any_data __old_functor = _M_functor; - _M_functor = __x._M_functor; - __x._M_functor = __old_functor; - _Manager_type __old_manager = _M_manager; - _M_manager = __x._M_manager; - __x._M_manager = __old_manager; - _Invoker_type __old_invoker = _M_invoker; - _M_invoker = __x._M_invoker; - __x._M_invoker = __old_invoker; + std::swap(_M_functor, __x._M_functor); + std::swap(_M_manager, __x._M_manager); + std::swap(_M_invoker, __x._M_invoker); } // TODO: needs allocator_arg_t diff --git a/libstdc++-v3/include/tr1/functional b/libstdc++-v3/include/tr1/functional index 3340de6..869150f 100644 --- a/libstdc++-v3/include/tr1/functional +++ b/libstdc++-v3/include/tr1/functional @@ -1907,15 +1907,9 @@ namespace tr1 */ void swap(function& __x) { - _Any_data __old_functor = _M_functor; - _M_functor = __x._M_functor; - __x._M_functor = __old_functor; - _Manager_type __old_manager = _M_manager; - _M_manager = __x._M_manager; - __x._M_manager = __old_manager; - _Invoker_type __old_invoker = _M_invoker; - _M_invoker = __x._M_invoker; - __x._M_invoker = __old_invoker; + std::swap(_M_functor, __x._M_functor); + std::swap(_M_manager, __x._M_manager); + std::swap(_M_invoker, __x._M_invoker); } // [3.7.2.3] function capacity |