In C++20 <memory> depends on <bits/ranges_unitialized.h> which depends on <bits/random.h> just for a single concept. Including <bits/random.h> also requires including <cmath>, which is huge due to the C++17 special functions. This change moves the concept to the <bits/uniform_int_dist.h> internal header that exists so that <bits/stl_algobase.h> doesn't need to include <bits/random.h>. PR libstdc++/92546 (partial) * include/bits/random.h (uniform_random_bit_generator): Move definition to <bits/uniform_int_dist.h>. * include/bits/ranges_algo.h: Include <bits/uniform_int_dist.h> instead of <bits/random.h>. * include/bits/ranges_algobase.h: Do not include <cmath>. * include/bits/uniform_int_dist.h (uniform_random_bit_generator): Move here. * include/std/ranges: Do not include <limits>. * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lineno.
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| bernoulli_distribution | Loading commit data... | |
| binomial_distribution | Loading commit data... | |
| cauchy_distribution | Loading commit data... | |
| chi_squared_distribution | Loading commit data... | |
| discard_block_engine | Loading commit data... | |
| discrete_distribution | Loading commit data... | |
| exponential_distribution | Loading commit data... | |
| extreme_value_distribution | Loading commit data... | |
| fisher_f_distribution | Loading commit data... | |
| gamma_distribution | Loading commit data... | |
| geometric_distribution | Loading commit data... | |
| independent_bits_engine | Loading commit data... | |
| linear_congruential_engine | Loading commit data... | |
| lognormal_distribution | Loading commit data... | |
| mersenne_twister_engine | Loading commit data... | |
| negative_binomial_distribution | Loading commit data... | |
| normal_distribution | Loading commit data... | |
| piecewise_constant_distribution | Loading commit data... | |
| piecewise_linear_distribution | Loading commit data... | |
| poisson_distribution | Loading commit data... | |
| random_device | Loading commit data... | |
| seed_seq | Loading commit data... | |
| shuffle_order_engine | Loading commit data... | |
| student_t_distribution | Loading commit data... | |
| subtract_with_carry_engine | Loading commit data... | |
| uniform_int_distribution | Loading commit data... | |
| uniform_real_distribution | Loading commit data... | |
| weibull_distribution | Loading commit data... | |
| concept.cc | Loading commit data... | |
| default_random_engine.cc | Loading commit data... | |
| knuth_b.cc | Loading commit data... | |
| minstd_rand.cc | Loading commit data... | |
| minstd_rand0.cc | Loading commit data... | |
| mt19937.cc | Loading commit data... | |
| mt19937_64.cc | Loading commit data... | |
| pr60037-neg.cc | Loading commit data... | |
| ranlux24.cc | Loading commit data... | |
| ranlux24_base.cc | Loading commit data... | |
| ranlux48.cc | Loading commit data... | |
| ranlux48_base.cc | Loading commit data... |