stl_queue.h (queue<>::swap, [...]): Implement DR 1198.

2011-01-17  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_queue.h (queue<>::swap, priority_queue<>::swap):
	Implement DR 1198.
	* include/bits/stl_stack.h (stack<>::swap): Likewise.

From-SVN: r168914
This commit is contained in:
Paolo Carlini 2011-01-17 17:35:55 +00:00 committed by Paolo Carlini
parent 6c7d1b312d
commit 999209d01b
3 changed files with 19 additions and 5 deletions

View file

@ -1,3 +1,9 @@
2011-01-17 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_queue.h (queue<>::swap, priority_queue<>::swap):
Implement DR 1198.
* include/bits/stl_stack.h (stack<>::swap): Likewise.
2011-01-16 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/47323

View file

@ -1,6 +1,7 @@
// Queue implementation -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
// 2010, 2011
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@ -240,7 +241,10 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
#ifdef __GXX_EXPERIMENTAL_CXX0X__
void
swap(queue& __q)
{ c.swap(__q.c); }
{
using std::swap;
swap(c, __q.c);
}
#endif
};
@ -526,7 +530,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
swap(priority_queue& __pq)
{
using std::swap;
c.swap(__pq.c);
swap(c, __pq.c);
swap(comp, __pq.comp);
}
#endif

View file

@ -1,6 +1,7 @@
// Stack implementation -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
// 2010, 2011
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@ -214,7 +215,10 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
#ifdef __GXX_EXPERIMENTAL_CXX0X__
void
swap(stack& __s)
{ c.swap(__s.c); }
{
using std::swap;
swap(c, __s.c);
}
#endif
};