gcc/libstdc++-v3/include/bits
Jonathan Wakely dd9db6f897 P0935R0 Eradicating unnecessarily explicit default constructors
Explicit default constructors are problematic, so this change removes
them from <random> and <ext/random>, as per P0935R0.

	* include/bits/random.h (linear_congruential_engine)
	(mersenne_twister_engine, subtract_with_carry_engine, random_device)
	(uniform_real_distribution, normal_distribution)
	(lognormal_distribution, gamma_distribution, chi_squared_distribution)
	(cauchy_distribution, fisher_f_distribution, student_t_distribution)
	(bernoulli_distribution, binomial_distribution,geometric_distribution)
	(negative_binomial_distribution, exponential_distribution)
	(weibull_distribution, extreme_value_distribution): Add non-explicit
	default constructors. Remove default argument for first parameter of
	explicit constructors.
	(piecewise_constant_distribution, piecewise_linear_distribution):
	Make default constructor non-explicit.
	* include/bits/uniform_int_dist.h (uniform_int_distribution): Add
	non-explicit default constructors. Remove default argument for first
	parameter of explicit constructor.
	(simd_fast_mersenne_twister_engine, beta_distribution)
	(rice_distribution, nakagami_distribution, pareto_distribution)
	(k_distribution, arcsine_distribution, hoyt_distribution)
	(triangular_distribution, von_mises_distribution)
	(hypergeometric_distribution, logistic_distribution)
	(uniform_inside_sphere_distribution): Likewise.
	(uniform_on_sphere_distribution): Make default constructor
	non-explicit.
	* testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc:
	Test for non-explicit default constructor. Fix references to standard.
	* testsuite/26_numerics/random/binomial_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/chi_squared_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/discrete_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/exponential_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/extreme_value_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/gamma_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/geometric_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/lognormal_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/negative_binomial_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/normal_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/poisson_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/student_t_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/uniform_int_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/uniform_real_distribution/cons/default.cc:
	Likewise.
	* testsuite/26_numerics/random/weibull_distribution/cons/default.cc:
	Likewise.
	* testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/beta_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/hypergeometric_distribution/cons/default.cc:
	Likewise.
	* testsuite/ext/random/k_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/normal_mv_distribution/cons/default.cc:
	Likewise.
	* testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/rice_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/triangular_distribution/cons/default.cc:
	Likewise.
	* testsuite/ext/random/uniform_inside_sphere_distribution/cons/default.cc:
	Likewise.
	* testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc:
	Likewise.
	* testsuite/ext/random/von_mises_distribution/cons/default.cc:
	Likewise.
	* testsuite/util/testsuite_common_types.h
	(implicitly_default_constructible): New helper.

From-SVN: r261522
2018-06-12 20:10:55 +01:00
..
algorithmfwd.h Update copyright years. 2018-01-03 11:03:58 +01:00
alloc_traits.h Update copyright years. 2018-01-03 11:03:58 +01:00
allocated_ptr.h Update copyright years. 2018-01-03 11:03:58 +01:00
allocator.h Some libstdc++ fixes for -Wdeprecated-copy. 2018-05-18 16:02:14 -04:00
atomic_base.h Implement P0558R2 changes to std::atomic 2018-05-24 16:28:26 +01:00
atomic_futex.h Update copyright years. 2018-01-03 11:03:58 +01:00
basic_ios.h Update copyright years. 2018-01-03 11:03:58 +01:00
basic_ios.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
basic_string.h PR libstdc++/84087 add default arguments to basic_string members (LWG 2268) 2018-05-03 16:01:20 +01:00
basic_string.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
boost_concept_check.h Update copyright years. 2018-01-03 11:03:58 +01:00
c++0x_warning.h Update copyright years. 2018-01-03 11:03:58 +01:00
c++config re PR c++/86068 (__cpp_transactional_memory is 210500) 2018-06-06 19:55:39 +02:00
char_traits.h Update copyright years. 2018-01-03 11:03:58 +01:00
codecvt.h Update copyright years. 2018-01-03 11:03:58 +01:00
concept_check.h Update copyright years. 2018-01-03 11:03:58 +01:00
cpp_type_traits.h Update copyright years. 2018-01-03 11:03:58 +01:00
deque.tcc deque.tcc (deque<>::_M_assign_aux): Cast to void to ensure overloaded comma not used. 2018-05-02 19:51:33 +00:00
enable_special_members.h Update copyright years. 2018-01-03 11:03:58 +01:00
forward_list.h 2018-01-10 François Dumont <fdumont@gcc.gnu.org> 2018-01-10 16:59:02 +00:00
forward_list.tcc 2018-01-10 François Dumont <fdumont@gcc.gnu.org> 2018-01-10 16:59:02 +00:00
fs_dir.h Update copyright years. 2018-01-03 11:03:58 +01:00
fs_fwd.h Update copyright years. 2018-01-03 11:03:58 +01:00
fs_ops.h Avoid redundant calls to filesystem::status_known 2018-01-04 13:46:22 +00:00
fs_path.h PR libstdc++/78870 support std::filesystem on Windows 2018-05-31 20:20:24 +01:00
fstream.tcc Add support for opening file streams from wide character strings 2018-05-21 18:18:35 +01:00
functexcept.h Update copyright years. 2018-01-03 11:03:58 +01:00
functional_hash.h Update copyright years. 2018-01-03 11:03:58 +01:00
gslice_array.h PR libstdc++/83860 avoid dangling references in valarray closure types 2018-05-02 17:41:46 +01:00
gslice.h Update copyright years. 2018-01-03 11:03:58 +01:00
hashtable_policy.h re PR libstdc++/83709 (Inserting duplicates into an unordered associative containers causes the container to invalidate iterators) 2018-01-09 21:05:10 +00:00
hashtable.h re PR libstdc++/83709 (Inserting duplicates into an unordered associative containers causes the container to invalidate iterators) 2018-01-09 21:05:10 +00:00
indirect_array.h Update copyright years. 2018-01-03 11:03:58 +01:00
invoke.h Update copyright years. 2018-01-03 11:03:58 +01:00
ios_base.h Define special members as defaulted 2018-06-08 17:43:14 +01:00
istream.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
list.tcc deque.tcc (deque<>::_M_assign_aux): Cast to void to ensure overloaded comma not used. 2018-05-02 19:51:33 +00:00
locale_classes.h Update copyright years. 2018-01-03 11:03:58 +01:00
locale_classes.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
locale_conv.h Update copyright years. 2018-01-03 11:03:58 +01:00
locale_facets_nonio.h Update copyright years. 2018-01-03 11:03:58 +01:00
locale_facets_nonio.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
locale_facets.h Update copyright years. 2018-01-03 11:03:58 +01:00
locale_facets.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
localefwd.h Update copyright years. 2018-01-03 11:03:58 +01:00
mask_array.h PR libstdc++/83860 avoid dangling references in valarray closure types 2018-05-02 17:41:46 +01:00
memoryfwd.h Update copyright years. 2018-01-03 11:03:58 +01:00
move.h Update copyright years. 2018-01-03 11:03:58 +01:00
node_handle.h PR libstdc++/82966 fix swapping of node handles 2018-05-14 15:27:54 +01:00
ostream_insert.h Update copyright years. 2018-01-03 11:03:58 +01:00
ostream.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
parse_numbers.h PR libstdc++/84671 handle digit separators in duration literals 2018-03-02 20:38:50 +00:00
postypes.h Define std::fpos special members as defaulted 2018-06-04 17:07:55 +01:00
predefined_ops.h Update copyright years. 2018-01-03 11:03:58 +01:00
ptr_traits.h Update copyright years. 2018-01-03 11:03:58 +01:00
quoted_string.h PR libstdc++/86008 add std::quoted support for string_view 2018-06-06 07:05:07 +01:00
random.h P0935R0 Eradicating unnecessarily explicit default constructors 2018-06-12 20:10:55 +01:00
random.tcc PR libstdc++/85749 constrain seed sequences for random number engines 2018-05-15 16:36:46 +01:00
range_access.h Update copyright years. 2018-01-03 11:03:58 +01:00
refwrap.h Update copyright years. 2018-01-03 11:03:58 +01:00
regex_automaton.h PR libstdc++/85098 add missing definitions for static constants 2018-05-18 17:14:04 +01:00
regex_automaton.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
regex_compiler.h regex_compiler.h (_S_cache_size): Change from function to variable. 2018-05-10 15:12:23 -04:00
regex_compiler.tcc PR libstdc++/85098 add missing definitions for static constants 2018-05-18 17:14:04 +01:00
regex_constants.h Update copyright years. 2018-01-03 11:03:58 +01:00
regex_error.h Update copyright years. 2018-01-03 11:03:58 +01:00
regex_executor.h Update copyright years. 2018-01-03 11:03:58 +01:00
regex_executor.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
regex_scanner.h Update copyright years. 2018-01-03 11:03:58 +01:00
regex_scanner.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
regex.h Default special members of regex types and add noexcept 2018-06-07 09:56:45 +01:00
regex.tcc re PR libstdc++/83601 (std::regex_replace C++14 conformance issue: escaping in SED mode) 2018-01-14 00:48:30 +00:00
shared_ptr_atomic.h Update copyright years. 2018-01-03 11:03:58 +01:00
shared_ptr_base.h Remove redundant std::move on const object 2018-06-06 20:39:27 +01:00
shared_ptr.h Update copyright years. 2018-01-03 11:03:58 +01:00
slice_array.h PR libstdc++/83860 avoid dangling references in valarray closure types 2018-05-02 17:41:46 +01:00
specfun.h Update copyright years. 2018-01-03 11:03:58 +01:00
sstream.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
std_abs.h PR libstdc++/85729 add linkage specifications to headers 2018-05-10 13:35:45 +01:00
std_function.h Make std::function tolerate semantically non-CopyConstructible objects 2018-05-09 14:28:11 +01:00
std_mutex.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_algo.h 2018-06-05 François Dumont <fdumont@gcc.gnu.org> 2018-06-05 05:47:44 +00:00
stl_algobase.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_bvector.h Define special members as defaulted 2018-06-08 17:43:14 +01:00
stl_construct.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_deque.h Some libstdc++ fixes for -Wdeprecated-copy. 2018-05-18 16:02:14 -04:00
stl_function.h PR libstdc++/85040 fix std::less<void> etc. ambiguities 2018-03-22 14:23:27 +00:00
stl_heap.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_iterator_base_funcs.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_iterator_base_types.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_iterator.h Some libstdc++ fixes for -Wdeprecated-copy. 2018-05-18 16:02:14 -04:00
stl_list.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_map.h stl_tree.h (_Rb_tree_impl(_Node_allocator&&)): New. 2018-05-27 17:06:40 +00:00
stl_multimap.h stl_tree.h (_Rb_tree_impl(_Node_allocator&&)): New. 2018-05-27 17:06:40 +00:00
stl_multiset.h stl_tree.h (_Rb_tree_impl(_Node_allocator&&)): New. 2018-05-27 17:06:40 +00:00
stl_numeric.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_pair.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_queue.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_raw_storage_iter.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_relops.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_set.h stl_tree.h (_Rb_tree_impl(_Node_allocator&&)): New. 2018-05-27 17:06:40 +00:00
stl_stack.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_tempbuf.h 2018-06-05 François Dumont <fdumont@gcc.gnu.org> 2018-06-05 05:47:44 +00:00
stl_tree.h stl_tree.h (_Rb_tree_impl(_Node_allocator&&)): New. 2018-05-27 17:06:40 +00:00
stl_uninitialized.h Update copyright years. 2018-01-03 11:03:58 +01:00
stl_vector.h Update copyright years. 2018-01-03 11:03:58 +01:00
stream_iterator.h Define special members as defaulted 2018-06-08 17:43:14 +01:00
streambuf_iterator.h Define special members as defaulted 2018-06-08 17:43:14 +01:00
streambuf.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
string_view.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
stringfwd.h Update copyright years. 2018-01-03 11:03:58 +01:00
uniform_int_dist.h P0935R0 Eradicating unnecessarily explicit default constructors 2018-06-12 20:10:55 +01:00
unique_ptr.h Update copyright years. 2018-01-03 11:03:58 +01:00
unordered_map.h re PR libstdc++/84998 (std::hash<std::bitset<N>> fails in Debug Mode) 2018-03-20 21:45:14 +00:00
unordered_set.h re PR libstdc++/84998 (std::hash<std::bitset<N>> fails in Debug Mode) 2018-03-20 21:45:14 +00:00
uses_allocator.h Update copyright years. 2018-01-03 11:03:58 +01:00
valarray_after.h PR libstdc++/83860 avoid dangling references in valarray closure types 2018-05-02 17:41:46 +01:00
valarray_array.h Add __attribute__((malloc) to allocator and remove unused code 2018-05-14 16:35:12 +01:00
valarray_array.tcc Update copyright years. 2018-01-03 11:03:58 +01:00
valarray_before.h PR libstdc++/83860 avoid dangling references in valarray closure types 2018-05-02 17:41:46 +01:00
vector.tcc deque.tcc (deque<>::_M_assign_aux): Cast to void to ensure overloaded comma not used. 2018-05-02 19:51:33 +00:00