diff options
author | Paolo Carlini <paolo.carlini@oracle.com> | 2010-12-06 14:44:38 +0000 |
---|---|---|
committer | Paolo Carlini <paolo@gcc.gnu.org> | 2010-12-06 14:44:38 +0000 |
commit | 258e15e073c181d9c880cdaf59fdef9755aa6a4c (patch) | |
tree | 100f63aeacb1e3f04abe3064b6b553e769e586e8 /libstdc++-v3/include | |
parent | 1a23b861078884027c54ddb27438cf08acc9ef20 (diff) | |
download | gcc-258e15e073c181d9c880cdaf59fdef9755aa6a4c.zip gcc-258e15e073c181d9c880cdaf59fdef9755aa6a4c.tar.gz gcc-258e15e073c181d9c880cdaf59fdef9755aa6a4c.tar.bz2 |
re PR libstdc++/46821 ([C++0x] swapping empty classes)
2010-12-06 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/46821
* include/std/tuple (_Head_base<,, true>::_M_swap_impl):
Swap the empty bases.
(_Head_base<,, false>::_M_swap_impl): Minor tweak.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
line number.
From-SVN: r167497
Diffstat (limited to 'libstdc++-v3/include')
-rw-r--r-- | libstdc++-v3/include/std/tuple | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libstdc++-v3/include/std/tuple b/libstdc++-v3/include/std/tuple index df9ef1d..87dbcb7 100644 --- a/libstdc++-v3/include/std/tuple +++ b/libstdc++-v3/include/std/tuple @@ -78,7 +78,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std) const _Head& _M_head() const { return *this; } void - _M_swap_impl(_Head&) { /* no-op */ } + _M_swap_impl(_Head& __h) + { + using std::swap; + swap(__h, _M_head()); + } }; template<std::size_t _Idx, typename _Head> @@ -101,7 +105,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) _M_swap_impl(_Head& __h) { using std::swap; - swap(__h, _M_head_impl); + swap(__h, _M_head()); } _Head _M_head_impl; |