diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index de63ca73fc3..11ae49e5bad 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,9 @@ +2011-01-17 Paolo Carlini + + * 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 PR libstdc++/47323 diff --git a/libstdc++-v3/include/bits/stl_queue.h b/libstdc++-v3/include/bits/stl_queue.h index fa40245cb41..2f8853a88ae 100644 --- a/libstdc++-v3/include/bits/stl_queue.h +++ b/libstdc++-v3/include/bits/stl_queue.h @@ -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 diff --git a/libstdc++-v3/include/bits/stl_stack.h b/libstdc++-v3/include/bits/stl_stack.h index a5c25d49eb7..7f7ad9d0189 100644 --- a/libstdc++-v3/include/bits/stl_stack.h +++ b/libstdc++-v3/include/bits/stl_stack.h @@ -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 };