summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/include/bits/random.tcc
Commit message (Collapse)AuthorAgeFilesLines
* 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>emsr2014-07-301-0/+3
| | | | | | | | | | | | | | | PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...> * include/bits/random.h (_Adaptor): static_assert for non floating-point result type. * include/bits/random.tcc (generate_canonical): Ditto. * include/ext/random.tcc (hypergeometric_distribution::operator()): Use double as a rng result type. * testsuite/26_numerics/random/pr60037-neg.cc: New. * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@213231 138bc75d-0d04-0410-961f-82ee72b054a4
* Update copyright years in libstdc++-v3/rsandifo2014-01-021-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206301 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-09-03 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-09-031-1/+1
| | | | | | | | | | | | PR libstdc++/58302 * include/bits/random.tcc (negative_binomial_distribution<>:: operator()(_UniformRandomNumberGenerator&, const param_type&): Fix typo in template argument. * testsuite/26_numerics/random/negative_binomial_distribution/ operators/58302.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@202208 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-22 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-06-221-4/+6
| | | | | | | | | | | | | | | PR libstdc++/57674 * include/bits/random.h (binomial_distribution<>::_M_waiting): Add double parameter. * include/bits/random.tcc (binomial_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&)): Pass __param._M_q to _M_waiting. (_M_waiting): Adjust. * testsuite/26_numerics/random/binomial_distribution/ operators/values.cc: Add tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200341 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-02-121-14/+13
| | | | | | | | | | | | | * include/bits/random.tcc (__transform): Remove. (__normalize): Add. (discrete_distribution<>::param_type::_M_initialize): Adjust. (piecewise_constant_distribution<>::param_type::_M_initialize): Likewise. (piecewise_linear_distribution<>::param_type::_M_initialize): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195970 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>paolo2013-02-041-6/+2
| | | | | | | | | | | | | | Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/56202 (again) * include/bits/random.tcc (binomial_distribution<>:: _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko in previous commit. * include/bits/random.h: Fix comment typo. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195732 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>paolo2013-02-041-0/+6
| | | | | | | | | | | | Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/56202 * include/bits/random.tcc (binomial_distribution<>:: _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid division by zero. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195722 138bc75d-0d04-0410-961f-82ee72b054a4
* Update copyright in libstdc++-v3.rsandifo2013-02-031-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195701 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-11-05 Paolo Carlini <paolo.carlini@oracle.com>paolo2012-11-051-0/+1
| | | | | | | | | | | | | | | | | | | | | PR libstdc++/55215 * include/bits/random.tcc (mersenne_twister_engine<>::seed(_Sseq&)): Assign state_size to _M_p. * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc: New. * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/cons/ 55215.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/cons/ 55215.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193181 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-11-02 Paolo Carlini <paolo.carlini@oracle.com>paolo2012-11-021-2/+14
| | | | | | | | | | | | PR libstdc++/55169 * include/bits/random.h: Remove all uses of param(). (chi_squared_distribution<>::__generate_impl(_ForwardIterator, _ForwardIterator, _UniformRandomNumberGenerator&): Declare * include/bits/random.tcc: ... define. * include/ext/random: Remove all uses of param(). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193092 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-10-24 Haakan Younes <hyounes@google.com>paolo2012-10-241-18/+22
| | | | | | | | | | | | Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/55047 * include/bits/random.h (exponential_distribution<>::operator): Fix formula to std::log(result_type(1) - __aurng()). * include/bits/random.tcc: Likewise, everywhere. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192762 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-09-26 Ulrich Drepper <drepper@gmail.com>drepper2012-09-261-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimize bulk mode for normal_distribution<double> for SSE3. * configure.host: Define cpu_opt_bits_random. * configure.ac: Substitute CPU_OPT_BITS_RANDOM. * include/Makefile.am (bits_headers): Add ${bits_host_headers}. (bits_host_headers): Define. * include/bits/random.tcc: Move __details::_Power_of_2 to... * include/bits/random.h: ...here. * include/std/random: Include <bits/opt_random.h>. * config/cpu/i486/opt/bits/opt_random.h: New file. * config/cpu/generic/opt/bits/opt_random.h: New file. * configure: Regenerated. * Makefile.in: Regenerated. * aclocal.m4: Regenerated. * doc/Makefile.in: Regenerated. * include/Makefile.in: Regenerated. * libsupc++/Makefile.in: Regenerated. * po/Makefile.in: Regenerated. * python/Makefile.in: Regenerated. * src/Makefile.in: Regenerated. * src/c++11/Makefile.in: Regenerated. * src/c++98/Makefile.in: Regenerated. * testsuite/Makefile.in: Regenerated. * config/cpu/generic/opt/ext/opt_random.h: Fix comment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191758 138bc75d-0d04-0410-961f-82ee72b054a4
* Add interfaces to retrieve random numbers in bulk.drepper2012-08-271-0/+601
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/random.h (uniform_int_distribution<>): Add __generate and __generate_impl functions. (uniform_real_distribution<>): Likewise. (bernoulli_distribution): Likewise. (geometric_distribution<>): Likewise. (negative_binomial_distribution<>): Likewise. (poisson_distribution<>): Likewise. (exponential_distribution<>): Likewise. (normal_distribution<>): Likewise. (lognormal_distribution<>): Likewise. (chi_squared_distribution<>): Likewise. (cauchy_distribution<>): Likewise. (fisher_f_distribution<>): Likewise. (student_t_distribution<>): Likewise. (gamma_distribution<>): Likewise. (weibull_distribution<>): Likewise. (extreme_value_distribution<>): Likewise. (discrete_distribution<>): Likewise. (piecewise_constant_distribution<>): Likewise. (piecewise_linear_distribution<>): Likewise. * include/bits/random.tcc (__detail::_Power_of_2): New function. (uniform_int_distribution<>::__generate_impl): New function. (uniform_real_distribution<>::__generate_impl): New function. (bernoulli_distribution::__generate_impl): New function. (geometric_distribution<>::__generate_impl): New function. (negative_binomial_distribution<>::__generate_impl): New function. (poisson_distribution<>::__generate_impl): New function. (exponential_distribution<>::__generate_impl): New function. (normal_distribution<>::__generate_impl): New function. (lognormal_distribution<>::__generate_impl): New function. (chi_squared_distribution<>::__generate_impl): New function. (cauchy_distribution<>::__generate_impl): New function. (fisher_f_distribution<>::__generate_impl): New function. (student_t_distribution<>::__generate_impl): New function. (gamma_distribution<>::__generate_impl): New function. (weibull_distribution<>::__generate_impl): New function. (extreme_value_distribution<>::__generate_impl): New function. (discrete_distribution<>::__generate_impl): New function. (piecewise_constant_distribution<>::__generate_impl): New function. (piecewise_linear_distribution<>::__generate_impl): New function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190712 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/random.h (mersenne_twister_engine): Don't inlinedrepper2012-08-271-26/+55
| | | | | | | | | | | | | discard here. New member function _M_gen_rand. * include/bits/random.tcc (mersenne_twister_engine<>::_M_gen_rand): New function. Extracted from operator(). (mersenne_twister_engine<>::discard): New implementation which skips in large steps. (mersenne_twister_engine<>::operator()): Use _M_gen_rand. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190711 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/random.tcc (seed_seq::generate): Cast max()dj2012-05-101-1/+1
| | | | | | | | | operands to size_t to ensure a template match. * include/std/bitset (_M_copy_from_ptr): Cast min() operands to size_t to ensure a template match. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187376 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-04-29 Marc Glisse <marc.glisse@inria.fr>paolo2012-04-291-47/+31
| | | | | | | | | | | | | | | | | | | Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/51795 * include/bits/stl_algobase.h (__lg<>(_Size)): Remove. (__lg(int), __lg(unsigned), __lg(long), __lg(unsigned long), __lg(long long), __lg(unsigned long long)): Define constexpr. * include/bits/random.h (_Mod<>): Overcome Schrage's algorithm limitations. (__mod): Adjust. (linear_congruential): Remove FIXME static_assert. * include/bits/random.tcc (_Mod<>): Adjust. * testsuite/26_numerics/random/linear_congruential_engine/operators/ 51795.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186948 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-04-14 Paolo Carlini <paolo.carlini@oracle.com>paolo2012-04-141-22/+46
| | | | | | | | | | | | | | | | | | PR libstdc++/52699 * include/bits/random.tcc (independent_bits_engine<>::operator()()) Avoid various overflows; use common_type on result_type and _RandomNumberEngine::result_type; avoid floating point computations; other smaller tweaks. * include/bits/random.tcc (uniform_int_distribution<>::operator()) Use common_type; assume _UniformRandomNumberGenerator::result_type unsigned; tidy. * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long), __lg(unsigned long long)): Add. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186456 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-01-27 Paolo Carlini <paolo.carlini@oracle.com>paolo2012-01-271-5/+7
| | | | | | | | | | | | PR libstdc++/51795 * include/bits/random.h (linear_congruential_generator): Add static_assert preventing instantiation for values of 'a' and 'm' currently handled incorrectly but _Mod::__calc. * include/bits/random.tcc (seed_seq::generate): Avoid unsafe uses of _Mod::__calc. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183655 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-11-02 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-11-021-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/50951 * include/bits/random.tcc (operator<<(basic_ostream<>&, const mersenne_twister_engine<>&): Output _M_p too. (operator<<(basic_ostream<>&, const subtract_with_carry_engine<>&): Likewise. (operator>>(basic_istream<>&, mersenne_twister_engine<>&): Reload it. (operator>>(basic_istream<>&, subtract_with_carry_engine<>&): Likewise. * include/bits/random.h (mersenne_twister_engine<>::operator==): Compare _M_p too. (subtract_with_carry_engine<>::operator==): Compare _M_carry and _M_p too. (shuffle_order_engine<>::operator==): Compare _M_v(s) and _M_y too. * testsuite/26_numerics/random/independent_bits_engine/ operators/serialize.cc: Extend. * testsuite/26_numerics/random/subtract_with_carry_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/ operators/serialize.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180764 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-24 John Salmon <john.salmon@deshaw.com>paolo2011-09-241-2/+2
| | | | | | | | PR libstdc++/50510 * include/bits/random.tcc (seed_seq::generate): Fix computation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179149 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-24 John Salmon <john.salmon@deshaw.com>paolo2011-09-241-2/+2
| | | | | | | | PR libstdc++/50509 * include/bits/random.tcc (seed_seq::generate): Fix computation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179144 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-03-25 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-03-251-6/+5
| | | | | | | | | | | | | * include/bits/random.h (negative_binomial_distribution<>:: negative_binomial_distribution(_IntType, double), negative_binomial_distribution<>:: negative_binomial_distribution(const param_type&)): Tweak construction of _M_gd. * include/bits/random.tcc (negative_binomial_distribution<>:: operator()): Adjust. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171443 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-03-24 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-03-241-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/random.h (negative_binomial_distribution<>:: negative_binomial_distribution(_IntType, double), negative_binomial_distribution<>:: negative_binomial_distribution(const param_type&)): Fix construction of _M_gd. * include/bits/random.tcc (negative_binomial_distribution<>:: operator()): Fix computation, per Leger's algorithm. * testsuite/util/testsuite_random.h (discrete_pdf, negative_binomial_pdf, poisson_pdf, uniform_int_pdf): New. (binomial_pdf): Swap last two parameters. * testsuite/26_numerics/random/discrete_distribution/ operators/values.cc: New. * testsuite/26_numerics/random/negative_binomial_distribution/ operators/values.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/ operators/values.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/ operators/values.cc: Likewise. * testsuite/26_numerics/random/binomial_distribution/ operators/values.cc: Adjust. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171411 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-03-14 Andrey Zholos <aaz@althenia.net>paolo2011-03-141-2/+2
| | | | | | | | | | | | | | | PR libstdc++/48114 * include/bits/random.h (geometric_distribution): Correct formula in comment, per C++0x. (geometric_distribution<>::param_type::param_type(double)): Fix check. (geometric_distribution<>::param_type::_M_initialize): Store log(1 - p). * include/bits/random.tcc (geometric_distribution<>::operator()): Fix computation. (binomial_distribution<>::operator()): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170946 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-01-30 Benjamin Kosnik <bkoz@redhat.com>bkoz2011-01-301-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/36104 part four * include/bits/c++config (_GLIBCXX_STD): Remove. (_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C. (_GLIBCXX_P): Now _GLIBCXX_STD_A. (_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL, _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove. (_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL, _GLIBCXX_INLINE_PROFILE): Remove. (_GLIBCXX_BEGIN_NAMESPACE(X)): Remove. (_GLIBCXX_END_NAMESPACE): Remove. (_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove. (_GLIBCXX_END_NESTED_NAMESPACE): Remove. (_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add. (_GLIBCXX_END_NAMESPACE_ALGO): Add. (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add. (_GLIBCXX_END_NAMESPACE_CONTAINER): Add. (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add. (_GLIBCXX_END_NAMESPACE_VERSION): Add. (_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL. (_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL. (_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY. * include/*: Use new macros for namespace scope. * config/*: Same. * src/*: Same. * src/Makefile.am (sources): Remove debug_list.cc, add compatibility-debug_list-2.cc. (parallel_sources): Remove parallel_list.cc, add compatibility-parallel_list-2.cc. (compatibility-parallel_list-2.[o,lo]): New rule. * src/Makefile.in: Regenerate. * src/debug_list.cc: Remove. * src/parallel_list.cc: Remove. * src/compatibility-list-2.cc: New. * src/compatibility-debug_list-2.cc: New. * src/compatibility-parallel_list-2.cc: New. * doc/doxygen/user.cfg.in: Adjust macros. * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros. * testsuite/20_util/declval/requirements/1_neg.cc: Same. * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same. * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same. * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same. * testsuite/20_util/forward/c_neg.cc: Same. * testsuite/20_util/forward/f_neg.cc: Same. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same. * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same. * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same. * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same. * testsuite/23_containers/deque/requirements/dr438/ constructor_1_neg.cc: Same. * testsuite/23_containers/deque/requirements/dr438/ constructor_2_neg.cc: Same. * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same. * testsuite/23_containers/forward_list/capacity/1.cc: Same. * testsuite/23_containers/forward_list/requirements/dr438/ assign_neg.cc: Same. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_1_neg.cc: Same. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_2_neg.cc: Same. * testsuite/23_containers/forward_list/requirements/dr438/ insert_neg.cc: Same. * testsuite/23_containers/list/capacity/29134.cc: Same. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same. * testsuite/23_containers/list/requirements/dr438/ constructor_1_neg.cc: Same. * testsuite/23_containers/list/requirements/dr438/ constructor_2_neg.cc: Same. * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same. * testsuite/23_containers/vector/bool/capacity/29134.cc: Same. * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Same. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Same. * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same. * testsuite/25_algorithms/sort/35588.cc: Same. * testsuite/27_io/ios_base/cons/assign_neg.cc: Same. * testsuite/27_io/ios_base/cons/copy_neg.cc: Same. * testsuite/ext/profile/mutex_extensions_neg.cc: Same. * testsuite/ext/profile/profiler_algos.cc: Same. * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same. * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same. * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same. * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same. * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169421 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-11-18 Benjamin Kosnik <bkoz@redhat.com>bkoz2010-12-191-1/+1
| | | | | | | | | | | | | | | | * config/*/*: Use headername alias to associate private includes to public includes. * include/*/*: Same. * scripts/run_doxygen: Update for doxygen 1.7.2. * doc/doxygen/user.cfg.in: Same. * doc/doxygen/TODO: Remove. * testsuite/*/std_c++0x_neg.cc: Adjust line number. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168046 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-11-02 Paolo Carlini <paolo.carlini@oracle.com>paolo2010-11-021-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/tr1_impl/cinttypes: Remove, move contents to C++0x and TR1 headers. * include/tr1_impl/cstdlib: Likewise. * include/tr1_impl/cstdio: Likewise. * include/tr1_impl/cctype: Likewise. * include/tr1_impl/boost_sp_counted_base.h: Likewise. * include/tr1_impl/cmath: Likewise. * include/tr1_impl/cfenv: Likewise. * include/tr1_impl/utility: Likewise. * include/tr1_impl/complex: Likewise. * include/tr1_impl/cwchar: Likewise. * include/tr1_impl/type_traits: Likewise. * include/tr1_impl/cstdint: Likewise. * include/tr1_impl/regex: Likewise. * include/tr1_impl/array: Likewise. * include/tr1_impl/cwctype: Likewise. * include/Makefile.am: Adjust. * include/Makefile.in: Regenerate. * src/condition_variable.cc: Adjust; consistently use _GLIBCXX_BEGIN_NAMESPACE and _GLIBCXX_END_NAMESPACE. * src/mutex.cc: Likewise. * src/future.cc: Likewise. * src/atomic.cc: Likewise. * src/chrono.cc: Likewise. * src/thread.cc: Likewise. * include/std/tuple: Likewise. * include/std/utility: Likewise. * include/std/thread: Likewise.: Likewise. * include/std/type_traits: Likewise. * include/std/memory: Likewise. * include/std/future: Likewise. * include/std/ratio: Likewise. * include/std/chrono: Likewise. * include/std/condition_variable: Likewise. * include/std/mutex: Likewise. * include/std/functional: Likewise. * include/std/complex: Likewise. * include/std/typeindex: Likewise. * include/std/array: Likewise. * include/bits/regex_compiler.h: Likewise. * include/bits/regex_grep_matcher.tcc: Likewise. * include/bits/regex_grep_matcher.h: Likewise. * include/bits/regex_constants.h: Likewise. * include/bits/regex_cursor.h: Likewise. * include/bits/regex_nfa.tcc: Likewise. * include/bits/shared_ptr_base.h: Likewise. * include/bits/regex_nfa.h: Likewise. * include/bits/random.tcc: Likewise. * include/bits/regex.h: Likewise. * include/bits/random.h: Likewise. * include/bits/regex_error.h: Likewise. * include/c_global/cinttypes: Likewise. * include/c_global/cstdlib: Likewise. * include/c_global/cstdio: Likewise. * include/c_global/cctype: Likewise. * include/c_global/cmath: Likewise. * include/c_global/cfenv: Likewise. * include/c_global/cwchar: Likewise. * include/c_global/cstdint: Likewise. * include/c_global/cwctype: Likewise. * include/tr1/shared_ptr.h: Likewise. * include/tr1/cinttypes: Likewise. * include/tr1/cstdio: Likewise. * include/tr1/cfenv: Likewise. * include/tr1/utility: Likewise. * include/tr1/cwchar: Likewise. * include/tr1/type_traits: Likewise. * include/tr1/memory: Likewise. * include/tr1/cstdint: Likewise. * include/tr1/regex: Likewise. * include/tr1/cwctype: Likewise. * include/tr1/cstdlib: Likewise. * include/tr1/cctype: Likewise. * include/tr1/cmath: Likewise. * include/tr1/complex: Likewise. * include/tr1/array: Likewise. * include/c_compatibility/fenv.h: Likewise. * include/c_compatibility/stdint.h: Likewise. * include/c_compatibility/inttypes.h: Likewise. * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820.cc: Adjust dg-error line numbers. * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise. * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise. * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/ typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. * testsuite/20_util/shared_ptr/cons/43820.cc: Likewise. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166211 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/std/chrono: Extend constexpr application.jason2010-11-021-25/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * testsuite/util/testsuite_common_types.h (constexpr_default_constructible, constexpr_single_value_constructible) : Add comments about implied constraints. * testsuite/20_util/duration/cons/constexpr.cc: Activate all tests. * testsuite/20_util/time_point/cons/constexpr.cc: Same. * testsuite/20_util/time_point/requirements/constexpr_functions.cc: Same. * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust line numbers. * testsuite/20_util/time_point_cast/constexpr.cc: New. * include/std/bitset: Use __SIZEOF_* macros to re-create original logic instead of slipshod application of std::numeric_limits<T>::max() macros. * testsuite/util/testsuite_common_types.h (constexpr_default_constructible): Modify. * include/std/chrono: Tested constexpr. * testsuite/20_util/duration_cast/constexpr.cc: New. * testsuite/20_util/time_point/cons/constexpr.cc: New. * testsuite/20_util/duration/cons/constexpr.cc: Add single_value tests. * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust line numbers. * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same. * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same. * testsuite/20_util/time_point/cons/constexpr.cc: Add single_value tests. * testsuite/20_util/time_point/requirements/constexpr_functions.cc: Add. * testsuite/util/testsuite_common_types.h: Adjust init. * include/std/chrono (duration): Remove defaulted constructor, replace with mem-init list. * testsuite/20_util/duration/cons/constexpr.cc: Add single value. * testsuite/20_util/duration/requirements/constexpr_functions.cc: Add non-static member functions. * testsuite/20_util/default_delete/cons/constexpr.cc: New, xfail. * testsuite/20_util/enable_shared_from_this/cons/constexpr.cc: Same. * testsuite/20_util/shared_ptr/cons/constexpr.cc: Same. * testsuite/20_util/time_point/requirements/constexpr_functions.cc: Same. * testsuite/20_util/unique_ptr/cons/constexpr.cc: Same. * testsuite/20_util/weak_ptr/cons/constexpr.cc: Same. * include/std/bitset: Add constexpr as per N3126 draft. * testsuite/23_containers/bitset/cons/constexpr.cc: New. * testsuite/23_containers/bitset/requirements/constexpr_functions.cc: New. * testsuite/util/testsuite_common_types.h: Reset condition. * include/bits/random.h: Remove misleading comments. * include/bits/regex.h: Add constexpr. * testsuite/28_regex/05_constants/syntax_option_type.cc: Add tests. * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc: New. PR libstdc++/46134 * include/std/chrono: Use default constructor. * testsuite/util/testsuite_common_types.h (constexpr_default_constructible): Adjust condition. PR libstdc++/46133 * include/std/complex: Adjust complex specialization default constructors for constexpr. * testsuite/26_numerics/complex/cons/constexpr.cc: Enable tests. * include/bits/random.h: Adjust for constexpr as per N3126 draft. * testsuite/26_numerics/random/discard_block_engine/requirements/ constexpr_data.cc: New. * testsuite/26_numerics/random/discard_block_engine/requirements/ constexpr_functions.cc: New. * testsuite/26_numerics/random/independent_bits_engine/requirements/ constexpr_functions.cc: New. * testsuite/26_numerics/random/linear_congruential_engine/requirements/ constexpr_data.cc: New. * testsuite/26_numerics/random/linear_congruential_engine/requirements/ constexpr_functions.cc: New. * testsuite/26_numerics/random/mersenne_twister_engine/requirements/ constexpr_data.cc: New. * testsuite/26_numerics/random/mersenne_twister_engine/requirements/ constexpr_functions.cc: New. * testsuite/26_numerics/random/shuffle_order_engine/requirements/ constexpr_data.cc: New. * testsuite/26_numerics/random/shuffle_order_engine/requirements/ constexpr_functions.cc: New. * testsuite/26_numerics/random/subtract_with_carry_engine/requirements/ constexpr_data.cc: New. * testsuite/26_numerics/random/subtract_with_carry_engine/requirements/ constexpr_functions.cc: New. * include/bits/stream_iterator.h: Add constexpr as per N3126 draft. * include/bits/streambuf_iterator.h: Same. * include/std/complex: Same. * testsuite/24_iterators/istream_iterator/cons/constexpr.cc: New. * testsuite/24_iterators/istreambuf_iterator/cons/constexpr.cc: New. * testsuite/26_numerics/complex/cons/constexpr.cc: New. * testsuite/26_numerics/complex/requirements/constexpr_functions.cc: New. * include/bits/char_traits.h: Add constexpr as per N3126 draft. * testsuite/21_strings/char_traits/requirements/constexpr_functions.cc: New. * include/tr1_impl/array: Add constexpr as per N3126 draft. * testsuite/23_containers/array/requirements/ constexpr_functions.cc: New. * include/bits/shared_ptr.h: Revert changes. * include/bits/unique_ptr.h: Same. * include/std/chrono: Adjust. * include/tr1_impl/type_traits: Same. * testsuite/util/testsuite_common_types.h: Add test functors. * testsuite/20_util/duration/cons/constexpr.cc: New. * testsuite/20_util/duration/requirements/constexpr_functions.cc: Same. * testsuite/20_util/pair/cons/constexpr.cc: Same. * testsuite/20_util/ratio/requirements/constexpr_data.cc: Same. * testsuite/27_io/ios_base/types/fmtflags/constexpr_operators.cc: Same. * testsuite/27_io/ios_base/types/iostate/constexpr_operators.cc: Same. * testsuite/27_io/ios_base/types/openmode/constexpr_operators.cc: Same. * testsuite/30_threads/call_once/constexpr.cc: Same. * testsuite/30_threads/mutex/cons/constexpr.cc: Same. * testsuite/30_threads/once_flag/cons/constexpr.cc: Same. * testsuite/tr1/4_metaprogramming/integral_constant/requirements/ constexpr_data.cc: Same. * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers. * testsuite/29_atomics/atomic/cons/copy_neg.cc: Same. * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same. * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same. * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Same. * include/bits/allocator.h: Add constexpr as per N3126 draft. * include/bits/ios_base.h: Same. * include/bits/shared_ptr.h: Same. * include/bits/unique_ptr.h: Same. * include/bits/stl_iterator.h: Same. * include/bits/stl_pair.h: Same. * include/std/tuple: Same. * include/tr1_impl/type_traits: Same. * include/std/chrono: Same. * include/std/ratio: Same. * include/std/mutex: Same. * src/mutex.cc: Same. * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust. * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same. * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same. * testsuite/27_io/ios_base/cons/assign_neg.cc: Same. * testsuite/27_io/ios_base/cons/copy_neg.cc: Same. * doc/doxygen/user.cfg.in: Replace _GLIBCXX_USE_CONSTEXPR, _GLIBCXX_CONSTEXPR for doxygen generation. * src/limits.cc: Undef. * testsuite/29_atomics/atomic/cons/constexpr.cc: Adjust. * testsuite/29_atomics/atomic_address/cons/constexpr.cc: Same. * testsuite/29_atomics/atomic_integral/cons/constexpr.cc: Same. * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.c: Same. * testsuite/18_support/numeric_limits/constexpr.cc: To... * testsuite/18_support/numeric_limits/requirements/ constexpr_data.cc, constexpr_functions.cc: ...this * testsuite/util/testsuite_common_types.h (constexpr_single_value_constructible): Add. * testsuite/29_atomics/atomic/cons/constexpr.cc: Adjust name. * testsuite/29_atomics/atomic_integral/cons/constexpr.cc: Same. * testsuite/29_atomics/atomic_address/cons/constexpr.cc: New. * testsuite/18_support/numeric_limits/constexpr.cc: New. * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers. * testsuite/29_atomics/atomic/cons/constexpr.cc: Same. * testsuite/29_atomics/atomic/cons/copy_neg.cc: Same. * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same. * testsuite/29_atomics/atomic_integral/cons/constexpr.cc: Same. * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same. * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Same. * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc: Same. * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc: Same. * include/bits/c++config (_GLIBCXX_CONSTEXPR): Add. (_GLIBCXX_USE_CONSTEXPR): Add. * include/std/limits: Use it. * src/limits.cc: Adjust. * testsuite/ext/profile/mutex_extensions.cc: Change line number. * include/bits/atomic_0.h: Rework for N3126 draft, add constexpr. * include/bits/atomic_2.h: Same. * include/bits/atomic_base.h: Same. * include/std/atomic: Same. * src/atomic.cc: Same. * include/bits/atomicfwd_c.h: Remove. * include/bits/atomicfwd_cxx.h: Remove. * include/c_compatibility/stdatomic.h: Remove. * include/Makefile.am: Remove atomicfwd_c.h, atomicfwd_cxx.h, stdatomic.h. * include/Makefile.in: Regenerate. * doc/xml/manual/using.xml: Update list of header files for changes. * testsuite/util/testsuite_common_types.h (constexpr_constructible): Add. * testsuite/29_atomics/atomic/cons/constexpr.cc: New. * testsuite/29_atomics/atomic_integral/cons/constexpr.cc: New. * testsuite/17_intro/headers/c++200x/stdc++.cc: Modify. * testsuite/29_atomics/atomic/cons/assign_neg.cc: Same. * testsuite/29_atomics/atomic_address/cons/assign_neg.cc: Same. * testsuite/29_atomics/atomic_flag/cons/1.cc: Same. * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same. * testsuite/29_atomics/headers/atomic/macros.cc: Same. * testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Same. * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc: Same. * testsuite/29_atomics/atomic_flag/test_and_set/implicit.c: Remove. * testsuite/29_atomics/atomic_flag/test_and_set/explicit.c: Same. * testsuite/29_atomics/atomic_flag/clear/1.c: Same. * testsuite/29_atomics/headers/stdatomic.h/debug_mode.c: Same. * testsuite/29_atomics/headers/stdatomic.h/functions.c: Same. * testsuite/29_atomics/headers/stdatomic.h/macros.c: Same. * testsuite/29_atomics/headers/stdatomic.h/types.c: Same. * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166171 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-13 Paolo Carlini <paolo.carlini@oracle.com>paolo2010-10-131-18/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/random.h (discrete_distribution<>::param_type:: param_type()): Default construct the vectors. (discrete_distribution<>::param_type::probabilities): Adjust. (discrete_distribution<>::probabilities): Likewise. (discrete_distribution<>::max): Likewise. (piecewise_constant_distribution<>::param_type:: param_type()): Default construct the vectors. (piecewise_constant_distribution<>::param_type::intervals): Adjust. (piecewise_constant_distribution<>::param_type::densities): Likewise. (piecewise_constant_distribution<>::intervals): Likewise. (piecewise_constant_distribution<>::densities): Likewise. (piecewise_constant_distribution<>::min): Likewise. (piecewise_constant_distribution<>::max): Likewise. (piecewise_linear_distribution<>::param_type:: param_type()): Default construct the vectors. (piecewise_linear_distribution<>::param_type::intervals): Adjust. (piecewise_linear_distribution<>::param_type::densities): Likewise. (piecewise_linear_distribution<>::intervals): Likewise. (piecewise_linear_distribution<>::densities): Likewise. (piecewise_linear_distribution<>::min): Likewise. (piecewise_linear_distribution<>::max): Likewise. * include/bits/random.tcc (discrete_distribution<>::param_type:: _M_initialize): Deal quickly with raw _M_prob equivalent to a default constructed param_type, just clear the vector. (discrete_distribution<>::operator()): Early return 0 for a default constructed distribution. (piecewise_constant_distribution<>::param_type::_M_initialize): Likewise for _M_int and _M_den. (piecewise_constant_distribution<>::operator()): Early return for a default constructed distribution. (piecewise_linear_distribution<>::param_type::_M_initialize): Likewise. (piecewise_linear_distribution<>::operator()): Early return for a default constructed distribution. * testsuite/26_numerics/random/discrete_distribution/operators/ call-default.cc: New. * testsuite/26_numerics/random/piecewise_constant_distribution/ operators/call-default.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165427 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-12 Paolo Carlini <paolo.carlini@oracle.com>paolo2010-10-121-0/+3
| | | | | | | | | | | * include/bits/random.tcc (piecewise_linear_distribution<>:: operator()): Don't crash when the dist is default-constructed. * testsuite/26_numerics/random/piecewise_linear_distribution/ operators/call-default.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165379 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-09-09 Paolo Carlini <paolo.carlini@oracle.com>paolo2010-09-091-0/+5
| | | | | | | | | | PR libstdc++/45613 * include/bits/random.tcc: Add missing include guards. * include/bits/random.h: Likewise. * include/tr1/random.tcc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164074 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-06-20 Paolo Carlini <paolo.carlini@oracle.com>paolo2010-06-201-17/+51
| | | | | | | | | | Kai-Uwe Bux <bux@kubux.net> * include/bits/random.tcc (uniform_int_distribution<>::operator()): Fix to work well for arbitrary urng.max() and urng.min(). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161054 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-03-19 Paolo Carlini <paolo.carlini@oracle.com>paolo2010-03-191-10/+10
| | | | | | | | | | | | | | | | * include/bits/random.tcc: Minor formatting changes. 2010-03-19 Paolo Carlini <paolo.carlini@oracle.com> * include/bits/stl_algo.h (shuffle): Fix typo in signature. * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157565 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-03-19 Paolo Carlini <paolo.carlini@oracle.com>paolo2010-03-191-12/+22
| | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/stl_algo.h (shuffle): Add, per D3056. (random_shuffle): Fix signature in C++0x mode. (lower_bound, __lg): Move... * include/bits/stl_algobase.h: ... here. * include/bits/algorithmfwd.h: Adjust. * include/parallel/algorithmfwd.h: Likewise. * include/parallel/algo.h: Likewise. * include/bits/hashtable_policy.h (__lower_bound): Remove, adjust callers. * include/tr1/hashtable_policy.h (__lower_bound): Likewise. * include/bits/random.tcc (__detail::__transform): Add, adjust std::transform callers; don't include <algorithm>. * testsuite/25_algorithms/shuffle/1.cc: Add. * testsuite/25_algorithms/shuffle/requirements/ explicit_instantiation/2.cc: Likewise. * testsuite/25_algorithms/shuffle/requirements/ explicit_instantiation/pod.cc: Likewise. * include/bits/random.h: Add comments. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157564 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-03-16 Paolo Carlini <paolo.carlini@oracle.com>paolo2010-03-161-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/random.h (operator==(const uniform_int_distribution<>&, const uniform_int_distribution<>&), operator==(const uniform_real_distribution<>&, const uniform_real_distribution<>&), operator==(const lognormal_distribution<>&, const lognormal_distribution<>&), operator==(const chi_squared_distribution<>&, const chi_squared_distribution<>&), operator==(const cauchy_distribution<>&, const cauchy_distribution<>&), operator==(const fisher_distribution<>&, const fisher_distribution<>&), operator==(const student_t_distribution<>&, const student_t_distribution<>&), operator==(const bernoulli_distribution<>&, const bernoulli_distribution<>&), operator==(const binomial_distribution<>&, const binomial_distribution<>&), operator==(const geometric_distribution<>&, const geometric_distribution<>&), operator==(const negative_binomial_distribution<>&, const negative_binomial_distribution<>&), operator==(const poisson_distribution<>&, const poisson_distribution<>&), operator==(const exponential_distribution<>&, const exponential_distribution<>&), operator==(const gamma_distribution<>&, const gamma_distribution<>&), operator==(const weibull_distribution<>&, const weibull_distribution<>&), operator==(const extreme_value_distribution<>&, const extreme_value_distribution<>&), operator==(const discrete_distribution<>&, const discrete_distribution<>&), operator==(const piecewise_constant_distribution<>&, const piecewise_constant_distribution<>&), operator==(const piecewise_linear_distribution<>&, const piecewise_linear_distribution<>&)): Add, likewise for operator!=. (operator!=(const independent_bits_engine<>&, const independent_bits_engine<>&), operator!=(const subtract_with_carry_engine<>&, const subtract_with_carry_engine<>&), operator!=(const discard_block_engine<>&, const discard_block_engine<>&), operator!=(const mersenne_twister_engine<>&, const mersenne_twister_engine<>&), operator!=(const linear_congruential_engine<>&, const linear_congruential_engine<>&), operator!=(const shuffle_order_engine<>&, const shuffle_order_engine<>&): Add. * include/bits/random.tcc (operator==(const normal_distribution<>&, const normal_distribution<>&)): Add. * testsuite/26_numerics/random/uniform_real_distribution/operators/ inequal.cc: New. * testsuite/26_numerics/random/uniform_real_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/piecewise_constant_distribution/ operators/inequal.cc: Likewise. * testsuite/26_numerics/random/piecewise_constant_distribution/ operators/equal.cc: Likewise. * testsuite/26_numerics/random/chi_squared_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/chi_squared_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/bernoulli_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/bernoulli_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/discrete_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/discrete_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/weibull_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/weibull_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/independent_bits_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/cauchy_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/cauchy_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/negative_binomial_distribution/ operators/inequal.cc: Likewise. * testsuite/26_numerics/random/negative_binomial_distribution/ operators/equal.cc: Likewise. * testsuite/26_numerics/random/gamma_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/gamma_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/fisher_f_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/fisher_f_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/binomial_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/binomial_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/lognormal_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/lognormal_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/piecewise_linear_distribution/ operators/inequal.cc: Likewise. * testsuite/26_numerics/random/piecewise_linear_distribution/ operators/equal.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/geometric_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/geometric_distribution/operators/ equal.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157489 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-02-25 Ed Smith-Rowland <3dw4rd@verizon.net>paolo2010-02-251-19/+19
| | | | | | | | * include/bits/random.tcc (operator<<): Use max_digits10. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157068 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-02-16 Paolo Carlini <paolo.carlini@oracle.com>paolo2010-02-161-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/random.h (linear_congruential_engine(_Sseq&), mersenne_twister_engine(_Sseq&), subtract_with_carry_engine(_Sseq&)): Do not enable for the type itself. (discard_block_engine(_Sseq&), independent_bits_engine(_Sseq&), shuffle_order_engine(_Sseq&)): Do not enable for the type itself too. (linear_congruential_engine<>::seed(_Sseq&), mersenne_twister_engine<>::seed(_Sseq&), subtract_with_carry_engine<>::seed(_Sseq&)): Use enable_if on the return type. (discard_block_engine<>::seed(_Sseq&), independent_bits_engine<>::seed(_Sseq&), shuffle_order_engine<>::seed(_Sseq&)): Do not use enable_if. * include/bits/random.tcc: Adjust definitions. * testsuite/26_numerics/random/independent_bits_engine/cons/copy.cc: New. * testsuite/26_numerics/random/subtract_with_carry_engine/cons/ copy.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/cons/ copy.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/cons/ copy.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/cons/ copy.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/cons/ copy.cc: Likewise. * testsuite/26_numerics/random/independent_bits_engine/cons/ base_move.cc: Minor tweaks. * testsuite/26_numerics/random/independent_bits_engine/cons/seed1.cc: Likewise. * testsuite/26_numerics/random/independent_bits_engine/cons/seed2.cc: Likewise. * testsuite/26_numerics/random/independent_bits_engine/cons/ base_copy.cc: Likewise. * testsuite/26_numerics/random/independent_bits_engine/cons/ default.cc: Likewise. * testsuite/26_numerics/random/independent_bits_engine/cons/ seed_seq.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/cons/ seed1.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/cons/ seed2.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/cons/ default.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/cons/ seed_seq.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/cons/base_move.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/cons/seed1.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/cons/seed2.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/cons/base_copy.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/cons/default.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/cons/seed_seq.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/cons/seed1.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/cons/seed2.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/cons/ default.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/cons/ seed_seq.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/cons/ seed1.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/cons/ seed2.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/cons/ seed_seq.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/cons/base_move.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/cons/seed1.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/cons/seed2.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/cons/base_copy.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/cons/default.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/cons/seed_seq.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156815 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-02-08 Ed Smith-Rowland <3dw4rd@verizon.net>paolo2010-02-081-7/+5
| | | | | | | | | | | | * include/bits/random.tcc (uniform_int_distribution<>:: operator()(_UniformRandomNumberGenerator&, const param_type&)): Use make_unsigned instead of __add_unsigned and conditional instead of __conditional_type. * include/std/random: Do not include <ext/type_traits.h> and <ext/numeric_traits.h>. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156608 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-02-04 Benjamin Kosnik <bkoz@redhat.com>bkoz2010-02-041-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/42460 * doc/doxygen/user.cfg.in: Update file list. * include/debug/safe_sequence.h: Doxygen markup fixes for '' and "". * include/debug/safe_base.h: Same. * include/debug/macros.h: Same. * include/tr1_impl/regex: Same. * include/std/iostream: Same. * include/std/streambuf: Same. * include/std/bitset: Same. * include/std/iosfwd: Same. * include/std/limits: Same. * include/std/fstream: Same. * include/std/istream: Same. * include/std/ostream: Same. * include/std/sstream: Same. * include/parallel/multiway_merge.h: Same. * include/parallel/for_each.h: Same. * include/parallel/workstealing.h: Same. * include/parallel/omp_loop_static.h: Same. * include/parallel/omp_loop.h: Same. * include/c_std/csignal: Same. * include/c_std/cstdlib: Same. * include/c_std/cstdio: Same. * include/c_std/cstdarg: Same. * include/c_std/cctype: Same. * include/c_std/cerrno: Same. * include/c_std/cmath: Same. * include/c_std/ciso646: Same. * include/c_std/ctime: Same. * include/c_std/clocale: Same. * include/c_std/climits: Same. * include/c_std/cassert: Same. * include/c_std/csetjmp: Same. * include/c_std/cwchar: Same. * include/c_std/cfloat: Same. * include/c_std/cstring: Same. * include/c_std/cstddef: Same. * include/c_std/cwctype: Same. * include/profile/iterator_tracker.h: Same. * include/profile/impl/profiler_trace.h: Same. * include/ext/vstring.h: Same. * include/ext/algorithm: Same. * include/ext/pb_ds/detail/pat_trie_/pat_trie_.h.pp: Same. * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.h.pp: Same. * include/ext/pb_ds/detail/type_utils.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same. * include/ext/rc_string_base.h: Same. * include/ext/stdio_sync_filebuf.h: Same. * include/ext/functional: Same. * include/ext/mt_allocator.h: Same. * include/bits/basic_ios.h: Same. * include/bits/stl_map.h: Same. * include/bits/stl_algobase.h: Same. * include/bits/stl_queue.h: Same. * include/bits/locale_classes.h: Same. * include/bits/stl_set.h: Same. * include/bits/locale_facets.h: Same. * include/bits/stl_stack.h: Same. * include/bits/stl_iterator_base_types.h: Same. * include/bits/basic_string.h: Same. * include/bits/stl_multimap.h: Same. * include/bits/ios_base.h: Same. * include/bits/stl_deque.h: Same. * include/bits/stl_multiset.h: Same. * include/bits/stl_iterator_base_funcs.h: Same. * include/bits/char_traits.h: Same. * include/bits/stl_algo.h: Same. * include/bits/stl_iterator.h: Same. * include/bits/stl_tempbuf.h: Same. * include/bits/random.tcc: Same. * include/bits/stl_function.h: Same. * include/bits/cpp_type_traits.h: Same. * include/bits/random.h: Same. * include/bits/allocator.h: Same. * include/bits/locale_facets_nonio.h: Same. * include/c_global/csignal: Same. * include/c_global/cstdlib: Same. * include/c_global/cstdio: Same. * include/c_global/cstdarg: Same. * include/c_global/cctype: Same. * include/c_global/cerrno: Same. * include/c_global/cmath: Same. * include/c_global/ciso646: Same. * include/c_global/ctime: Same. * include/c_global/clocale: Same. * include/c_global/climits: Same. * include/c_global/cassert: Same. * include/c_global/csetjmp: Same. * include/c_global/cwchar: Same. * include/c_global/cfloat: Same. * include/c_global/cstring: Same. * include/c_global/cstddef: Same. * include/c_global/cwctype: Same. * include/tr1/hypergeometric.tcc: Same. * include/tr1/random.tcc: Same. * include/tr1/functional: Same. * include/tr1/random.h: Same. * include/backward/auto_ptr.h: Same. * include/backward/binders.h: Same. * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Adjust line numbers. * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same. * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc: Same. * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc: Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156502 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-02-01 Paolo Carlini <paolo.carlini@oracle.com>paolo2010-02-011-74/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/42408 * include/bits/random.h (linear_congruential_engine<>:: linear_congruential_engine(seed_seq&), linear_congruential_engine<>::seed(seed_seq&), mersenne_twister<>::mersenne_twister(seed_seq&), mersenne_twister<>::seed(seed_seq&), subtract_with_carry_engine<>::subtract_with_carry_engine(seed_seq&), subtract_with_carry_engine<>::seed(seed_seq&), discard_block_engine<>::discard_block_engine(seed_seq&), discard_block_engine<>::seed(seed_seq&), independent_bits_engine<>::independent_bits_engine(seed_seq&), independent_bits_engine<>::seed(seed_seq&), shuffle_order_engine<>::shuffle_order_engine(seed_seq&), shuffle_order_engine<>::seed(seed_seq&)): Templatize. * include/bits/random.tcc: Adjust. * testsuite/26_numerics/random/subtract_with_carry_engine/cons/ seed_seq.cc: New. * testsuite/26_numerics/random/mersenne_twister_engine/cons/ seed_seq.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/ cons/seed_seq.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156430 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-09-29 Paolo Carlini <paolo.carlini@oracle.com>paolo2009-09-301-0/+172
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/random.tcc: Define static const data members. * include/tr1/random.tcc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/ requirements/constants.cc: New. * testsuite/26_numerics/random/mersenne_twister_engine/ requirements/constants.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/ requirements/constants.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/requirements/ constants.cc: Likewise. * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/ requirements/constants.cc: Likewise. * testsuite/tr1/5_numerical_facilities/random/ subtract_with_carry_01/requirements/constants.cc: Likewise. * testsuite/tr1/5_numerical_facilities/random/discard_block/ requirements/constants.cc: Likewise. * testsuite/tr1/5_numerical_facilities/random/linear_congruential/ requirements/constants.cc: Likewise. * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/ requirements/constants.cc: Likewise. * testsuite/tr1/5_numerical_facilities/random/xor_combine/ requirements/constants.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152317 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-06-29 Paolo Carlini <paolo.carlini@oracle.com>paolo2009-06-301-1/+1
| | | | | | | | | * include/bits/random.tcc (linear_congruential_engine<>::seed(seed_seq&)): Use uint_least32_t as array type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@149078 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-06-29 Paolo Carlini <paolo.carlini@oracle.com>paolo2009-06-301-53/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/random.h (__mod(_Tp)): Use defaults. (struct _Mod): Adjust template parameters. (linear_congruential_engine<>::operator()()): Adjust. (typedef _UInt32Type): Remove. (mersenne_twister_engine<>::initialization_multiplier): Fix type. * include/bits/random.tcc (struct _Mod): Adjust template parameters. (linear_congruential_engine<>::seed(result_type)): Adjust __mod calls. (mersenne_twister_engine<>::seed(result_type)): Likewise. (mersenne_twister_engine<>::seed(seed_seq&)): Likewise. (subtract_with_carry_engine<>::seed(result_type)): Likewise. (subtract_with_carry_engine<>::seed(seed_seq&)): Likewise. (seed_seq::seed_seq(std::initializer_list<>)): Likewise. (seed_seq::seed_seq(_InputIterator, _InputIterator)): Likewise. (seed_seq::generate(_RandomAccessIterator, _RandomAccessIterator)): Likewise. * include/bits/random.tcc (mersenne_twister_engine<>::seed(result_type)): Fix i usage in the formula (i mod n). (mersenne_twister_engine<>::seed(seed_seq&)): Use uint_least32_t as array type. (subtract_with_carry_engine<>::seed(seed_seq&)): Likewise; fix array size. (subtract_with_carry_engine<>::seed(result_type)): Fix; also use uint_least32_t. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@149074 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-06-19 Paolo Carlini <paolo.carlini@oracle.com>paolo2009-06-191-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/random.h (_Adaptor): Simplify for _DInputType always a floating point type. (uniform_int_distribution<>::uniform_int_distribution(_IntType, _IntType)): Fix second default argument. (uniform_int_distribution<>::_M_call): Remove. (uniform_int_distribution<>::operator()(_UniformRandomNumberGenerator&, const param_type&)): Only declare. * include/bits/random.tcc (uniform_int_distribution<>::_M_call( _UniformRandomNumberGenerator&, result_type, result_type, true_type): Remove. uniform_int_distribution<>::operator()(_UniformRandomNumberGenerator&, const param_type&): Define here. (geometric_distribution<>::operator()(_UniformRandomNumberGenerator&, const param_type&), discrete_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&), piecewise_constant_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&), piecewise_linear_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&)): Use double as the second template argument of _Adaptor. * testsuite/26_numerics/random/uniform_int_distribution/cons/ default.cc: Adjust. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@148720 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-06-19 Paolo Carlini <paolo.carlini@oracle.com>paolo2009-06-191-89/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/random.tcc (discrete_distribution<>::param_type:: param_type(size_t, double, double, _Func), discrete_distribution<>::operator()(_UniformRandomNumberGenerator&, const param_type&)): Tidy. (piecewise_constant_distribution<>::param_type::_M_initialize): Use reserve, fix. (piecewise_constant_distribution<>::param_type:: param_type(initializer_list<>, _Func), piecewise_constant_distribution<>::param_type:: param_type(size_t, _RealType, _RealType, _Func), piecewise_linear_distribution<>::param_type:: param_type(initializer_list<>, _Func), piecewise_linear_distribution<>::param_type:: param_type(size_t, _RealType, _RealType, _Func)): Use reserve, tidy. (piecewise_constant_distribution<>::param_type:: param_type(_InputIteratorB, _InputIteratorB, _InputIteratorW), piecewise_constant_distribution<>:: operator()(_UniformRandomNumberGenerator&, const param_type&), piecewise_linear_distribution<>:: operator()(_UniformRandomNumberGenerator&, const param_type&)): Fix. (operator>>(std::basic_istream<>&, piecewise_constant_distribution<>&), operator>>(std::basic_istream<>&, piecewise_linear_distribution<>&)): Use reserve. * include/bits/random.h: Minor cosmetic changes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@148719 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-06-11 Paolo Carlini <paolo.carlini@oracle.com>paolo2009-06-111-77/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/random.tcc (negative_binomial_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&): Tweak to use a class member gamma_distribution. (negative_binomial_distribution<>::operator() (_UniformRandomNumberGenerator&)): Implement out of line here. (operator<<(basic_ostream<>&, negative_binomial_distribution<>), operator>>(basic_ostream<>&, negative_binomial_distribution<>): Adjust. (student_t_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&): Move inline, simplify. (operator<<(basic_ostream<>&, student_t_distribution<>), operator>>(basic_ostream<>&, student_t_distribution<>): Adjust. (chi_squared_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&): Move inline, tweak to use a class member gamma_distribution. (operator<<(basic_ostream<>&, chi_squared_distribution<>), operator>>(basic_ostream<>&, chi_squared_distribution<>): Adjust. (fisher_f_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&): Move inline, tweak to use class member gamma_distributions. (operator<<(basic_ostream<>&, fisher_f_distribution<>), operator>>(basic_ostream<>&, fisher_f_distribution<>): Adjust. * include/bits/random.h: Adjust, minor tweaks. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@148393 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-06-08 Paolo Carlini <paolo.carlini@oracle.com>paolo2009-06-081-165/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/random.tcc (gamma_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&): Redo, using the Marsaglia/Tsang algorithm. (gamma_distribution<>::param_type::_M_initialize): Adjust. (operator<<(basic_ostream<>&, gamma_distribution<>), operator>>(basic_ostream<>&, gamma_distribution<>): Likewise. * include/bits/random.tcc(student_t_distribution<>::_M_gaussian): Remove, just use normal_distribution. (operator<<(basic_ostream<>&, student_t_distribution<>), operator>>(basic_ostream<>&, student_t_distribution<>): Adjust. (linear_congruential_engine<>::operator()()): Move inline. (lognormal_distribution<>::operator()(_UniformRandomNumberGenerator&, const param_type&)): Move inline, just use normal_distribution. (operator<<(basic_ostream<>&, lognormal_distribution<>), operator>>(basic_ostream<>&, lognormal_distribution<>): Adjust. (weibull_distribution<>::operator()(_UniformRandomNumberGenerator&, const param_type&)): Move here, out of line. (piecewise_constant_distribution<>::param_type::param_type()): Move inline. * include/bits/random.h: Adjust, minor tweaks. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@148276 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-05-14 Paolo Carlini <paolo.carlini@oracle.com>paolo2009-05-141-30/+28
| | | | | | | | | | | | | | | | PR libstdc++/40123 * random.tcc (independent_bits_engine<>::operator()()): Use result_type(1), not 1UL. * random.tcc (independent_bits_engine<>::operator()()): Use _M_b.max() and _M_b.min(), instead of this->max() and this->min(). * random.h (_ShiftMin1): Remove, adjust everywhere. * random.tcc: Minor cosmetic changes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147538 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-05-14 Paolo Carlini <paolo.carlini@oracle.com>paolo2009-05-141-4/+3
| | | | | | | | | * include/bits/random.tcc (cauchy_distribution<>:: operator()(_UniformRandomNumberGenerator&, const param_type&)): Avoid M_PI, a glibc extension. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147521 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-04-21 Paolo Carlini <paolo.carlini@oracle.com>paolo2009-04-211-15/+15
| | | | | | | | | | PR libstdc++/39835 * include/bits/random.h: Avoid the badname __alpha (and, for consistency, __beta too). * include/bits/random.tcc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146516 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud