Commit 633e8e19 by Paolo Carlini Committed by Paolo Carlini

stl_algo.h (shuffle): Change signature consistently with random_shuffle (US 121).

2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_algo.h (shuffle): Change signature consistently
	with random_shuffle (US 121).
	* include/bits/algorithmfwd.h: Adjust.
	* testsuite/25_algorithms/shuffle/requirements/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/25_algorithms/shuffle/requirements/
	explicit_instantiation/pod.cc: Likewise.

From-SVN: r163102
parent 4c7aaebf
2010-08-11 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_algo.h (shuffle): Change signature consistently
with random_shuffle (US 121).
* include/bits/algorithmfwd.h: Adjust.
* testsuite/25_algorithms/shuffle/requirements/
explicit_instantiation/2.cc: Likewise.
* testsuite/25_algorithms/shuffle/requirements/
explicit_instantiation/pod.cc: Likewise.
2010-08-11 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/move.h (forward): Reinstate the N2835 version.
2010-08-11 Paolo Carlini <paolo.carlini@oracle.com>
......
......@@ -521,7 +521,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
#if defined(__GXX_EXPERIMENTAL_CXX0X__) && defined(_GLIBCXX_USE_C99_STDINT_TR1)
template<typename _RAIter, typename _UGenerator>
void
shuffle(_RAIter, _RAIter, _UGenerator&);
shuffle(_RAIter, _RAIter, _UGenerator&&);
#endif
template<typename _RAIter>
......
......@@ -4133,7 +4133,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
typename _UniformRandomNumberGenerator>
void
shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last,
_UniformRandomNumberGenerator& __g)
_UniformRandomNumberGenerator&& __g)
{
// concept requirements
__glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
......
......@@ -21,7 +21,6 @@
// with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>.
#include <algorithm>
#include <random>
#include <testsuite_api.h>
......@@ -34,5 +33,5 @@ namespace std
typedef value_type* iterator_type;
typedef std::mt19937_64 ugenerator_type;
template void shuffle(iterator_type, iterator_type, ugenerator_type&);
template void shuffle(iterator_type, iterator_type, ugenerator_type&&);
}
......@@ -33,5 +33,5 @@ namespace std
typedef value_type* iterator_type;
typedef std::mt19937_64 ugenerator_type;
template void shuffle(iterator_type, iterator_type, ugenerator_type&);
template void shuffle(iterator_type, iterator_type, ugenerator_type&&);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment