r262856 - in /branches/gcc-8-branch/libstdc++-v...

redi@gcc.gnu.org redi@gcc.gnu.org
Wed Jul 18 13:23:00 GMT 2018


Author: redi
Date: Wed Jul 18 13:23:47 2018
New Revision: 262856

URL: https://gcc.gnu.org/viewcvs?rev=262856&root=gcc&view=rev
Log:
Add experimental::sample and experimental::shuffle from N4531

The additions to <experimental/random> were added in 2015 but the new
algorithms in <experimental/algorithm> were not. This adds them.

Also define "random_device" effective target to fix testsuite failures
on bare metal targets without std::random_device. The effective target
currently only matches targets where _GLIBCXX_USE_RANDOM_TR1 is defined,
which means /dev/random and /dev/urandom are usable.

Backport from mainline
2018-07-04  Jonathan Wakely  <jwakely@redhat.com>

	* testsuite/25_algorithms/make_heap/complexity.cc: Require effective
	target for std::random_device.
	* testsuite/26_numerics/random/random_device/cons/default.cc:
	Likewise.
	* testsuite/experimental/algorithm/sample-2.cc: Likewise.
	* testsuite/experimental/algorithm/shuffle.cc: Likewise.
	* testsuite/experimental/random/randint.cc: Likewise.
	* testsuite/lib/libstdc++.exp
	(check_effective_target_random_device): New proc.

Backport from mainline
2018-06-26  David Edelsohn  <dje.gcc@gmail.com>

	* testsuite/experimental/algorithm/sample-2.cc: Add TLS DejaGNU
	directives.
	* testsuite/experimental/algorithm/shuffle.cc: Likewise.

Backport from mainline
2018-06-25  Jonathan Wakely  <jwakely@redhat.com>

	* include/experimental/algorithm (sample, shuffle): Add new overloads
	using per-thread random number engine.
	* testsuite/experimental/algorithm/sample.cc: Simpify and reduce
	dependencies by using __gnu_test::test_container.
	* testsuite/experimental/algorithm/sample-2.cc: New.
	* testsuite/experimental/algorithm/shuffle.cc: New.

Added:
    branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/algorithm/sample-2.cc
      - copied, changed from r262845, branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/algorithm/sample.cc
    branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/algorithm/shuffle.cc
Modified:
    branches/gcc-8-branch/libstdc++-v3/ChangeLog
    branches/gcc-8-branch/libstdc++-v3/include/experimental/algorithm
    branches/gcc-8-branch/libstdc++-v3/testsuite/25_algorithms/make_heap/complexity.cc
    branches/gcc-8-branch/libstdc++-v3/testsuite/26_numerics/random/random_device/cons/default.cc
    branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/algorithm/sample.cc
    branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/random/randint.cc
    branches/gcc-8-branch/libstdc++-v3/testsuite/lib/libstdc++.exp



More information about the Libstdc++-cvs mailing list