diff --git a/libcxx/include/__chrono/formatter.h b/libcxx/include/__chrono/formatter.h --- a/libcxx/include/__chrono/formatter.h +++ b/libcxx/include/__chrono/formatter.h @@ -41,7 +41,6 @@ #include <__format/parser_std_format_spec.h> #include <__format/write_escaped.h> #include <__memory/addressof.h> -#include #include #include #include diff --git a/libcxx/include/__compare/strong_order.h b/libcxx/include/__compare/strong_order.h --- a/libcxx/include/__compare/strong_order.h +++ b/libcxx/include/__compare/strong_order.h @@ -13,11 +13,14 @@ #include <__compare/compare_three_way.h> #include <__compare/ordering.h> #include <__config> +#include <__math/exponential_functions.h> +#include <__math/traits.h> #include <__type_traits/conditional.h> #include <__type_traits/decay.h> +#include <__type_traits/is_floating_point.h> +#include <__type_traits/is_same.h> #include <__utility/forward.h> #include <__utility/priority_tag.h> -#include #include #include @@ -68,27 +71,27 @@ return strong_ordering::greater; } else if (__t == __u) { if constexpr (numeric_limits<_Dp>::radix == 2) { - return _VSTD::signbit(__u) <=> _VSTD::signbit(__t); + return __math::signbit(__u) <=> __math::signbit(__t); } else { // This is bullet 3 of the IEEE754 algorithm, relevant // only for decimal floating-point; // see https://stackoverflow.com/questions/69068075/ - if (__t == 0 || _VSTD::isinf(__t)) { - return _VSTD::signbit(__u) <=> _VSTD::signbit(__t); + if (__t == 0 || __math::isinf(__t)) { + return __math::signbit(__u) <=> __math::signbit(__t); } else { int __texp, __uexp; - (void)_VSTD::frexp(__t, &__texp); - (void)_VSTD::frexp(__u, &__uexp); + (void)__math::frexp(__t, &__texp); + (void)__math::frexp(__u, &__uexp); return (__t < 0) ? (__texp <=> __uexp) : (__uexp <=> __texp); } } } else { // They're unordered, so one of them must be a NAN. // The order is -QNAN, -SNAN, numbers, +SNAN, +QNAN. - bool __t_is_nan = _VSTD::isnan(__t); - bool __u_is_nan = _VSTD::isnan(__u); - bool __t_is_negative = _VSTD::signbit(__t); - bool __u_is_negative = _VSTD::signbit(__u); + bool __t_is_nan = __math::isnan(__t); + bool __u_is_nan = __math::isnan(__u); + bool __t_is_negative = __math::signbit(__t); + bool __u_is_negative = __math::signbit(__u); using _IntType = conditional_t< sizeof(__t) == sizeof(int32_t), int32_t, conditional_t< sizeof(__t) == sizeof(int64_t), int64_t, void> diff --git a/libcxx/include/__compare/weak_order.h b/libcxx/include/__compare/weak_order.h --- a/libcxx/include/__compare/weak_order.h +++ b/libcxx/include/__compare/weak_order.h @@ -13,10 +13,12 @@ #include <__compare/ordering.h> #include <__compare/strong_order.h> #include <__config> +#include <__math/traits.h> #include <__type_traits/decay.h> +#include <__type_traits/is_floating_point.h> +#include <__type_traits/is_same.h> #include <__utility/forward.h> #include <__utility/priority_tag.h> -#include #ifndef _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER # pragma GCC system_header @@ -53,10 +55,10 @@ return weak_ordering::greater; } else { // Otherwise, at least one of them is a NaN. - bool __t_is_nan = _VSTD::isnan(__t); - bool __u_is_nan = _VSTD::isnan(__u); - bool __t_is_negative = _VSTD::signbit(__t); - bool __u_is_negative = _VSTD::signbit(__u); + bool __t_is_nan = __math::isnan(__t); + bool __u_is_nan = __math::isnan(__u); + bool __t_is_negative = __math::signbit(__t); + bool __u_is_negative = __math::signbit(__u); if (__t_is_nan && __u_is_nan) { return (__u_is_negative <=> __t_is_negative); } else if (__t_is_nan) { diff --git a/libcxx/include/__format/formatter_floating_point.h b/libcxx/include/__format/formatter_floating_point.h --- a/libcxx/include/__format/formatter_floating_point.h +++ b/libcxx/include/__format/formatter_floating_point.h @@ -29,12 +29,12 @@ #include <__format/formatter_output.h> #include <__format/parser_std_format_spec.h> #include <__iterator/concepts.h> +#include <__math/traits.h> #include <__memory/allocator.h> #include <__system_error/errc.h> #include <__type_traits/conditional.h> #include <__utility/move.h> #include <__utility/unreachable.h> -#include #include #ifndef _LIBCPP_HAS_NO_LOCALIZATION @@ -643,10 +643,10 @@ template _LIBCPP_HIDE_FROM_ABI typename _FormatContext::iterator __format_floating_point(_Tp __value, _FormatContext& __ctx, __format_spec::__parsed_specifications<_CharT> __specs) { - bool __negative = _VSTD::signbit(__value); + bool __negative = __math::signbit(__value); - if (!_VSTD::isfinite(__value)) [[unlikely]] - return __formatter::__format_floating_point_non_finite(__ctx.out(), __specs, __negative, _VSTD::isnan(__value)); + if (!__math::isfinite(__value)) [[unlikely]] + return __formatter::__format_floating_point_non_finite(__ctx.out(), __specs, __negative, __math::isnan(__value)); // Depending on the std-format-spec string the sign and the value // might not be outputted together: diff --git a/libcxx/include/__hash_table b/libcxx/include/__hash_table --- a/libcxx/include/__hash_table +++ b/libcxx/include/__hash_table @@ -18,6 +18,7 @@ #include <__functional/hash.h> #include <__functional/invoke.h> #include <__iterator/iterator_traits.h> +#include <__math/rounding_functions.h> #include <__memory/addressof.h> #include <__memory/allocator_traits.h> #include <__memory/compressed_pair.h> @@ -42,9 +43,9 @@ #include <__utility/move.h> #include <__utility/pair.h> #include <__utility/swap.h> -#include #include #include +#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header @@ -1009,11 +1010,11 @@ _LIBCPP_INLINE_VISIBILITY void __rehash_multi(size_type __n) { __rehash(__n); } _LIBCPP_INLINE_VISIBILITY void __reserve_unique(size_type __n) { - __rehash_unique(static_cast(std::ceil(__n / max_load_factor()))); + __rehash_unique(static_cast(__math::ceil(__n / max_load_factor()))); } _LIBCPP_INLINE_VISIBILITY void __reserve_multi(size_type __n) { - __rehash_multi(static_cast(std::ceil(__n / max_load_factor()))); + __rehash_multi(static_cast(__math::ceil(__n / max_load_factor()))); } _LIBCPP_INLINE_VISIBILITY @@ -1636,7 +1637,7 @@ if (size()+1 > __bc * max_load_factor() || __bc == 0) { __rehash_unique(_VSTD::max(2 * __bc + !std::__is_hash_power2(__bc), - size_type(std::ceil(float(size() + 1) / max_load_factor())))); + size_type(__math::ceil(float(size() + 1) / max_load_factor())))); } return nullptr; } @@ -1708,7 +1709,7 @@ if (size()+1 > __bc * max_load_factor() || __bc == 0) { __rehash_multi(_VSTD::max(2 * __bc + !std::__is_hash_power2(__bc), - size_type(std::ceil(float(size() + 1) / max_load_factor())))); + size_type(__math::ceil(float(size() + 1) / max_load_factor())))); __bc = bucket_count(); } size_t __chash = std::__constrain_hash(__cp_hash, __bc); @@ -1799,7 +1800,7 @@ if (size()+1 > __bc * max_load_factor() || __bc == 0) { __rehash_multi(_VSTD::max(2 * __bc + !std::__is_hash_power2(__bc), - size_type(std::ceil(float(size() + 1) / max_load_factor())))); + size_type(__math::ceil(float(size() + 1) / max_load_factor())))); __bc = bucket_count(); } size_t __chash = std::__constrain_hash(__cp->__hash_, __bc); @@ -1848,7 +1849,7 @@ if (size()+1 > __bc * max_load_factor() || __bc == 0) { __rehash_unique(_VSTD::max(2 * __bc + !std::__is_hash_power2(__bc), - size_type(std::ceil(float(size() + 1) / max_load_factor())))); + size_type(__math::ceil(float(size() + 1) / max_load_factor())))); __bc = bucket_count(); __chash = std::__constrain_hash(__hash, __bc); } @@ -2064,8 +2065,8 @@ __n = _VSTD::max ( __n, - std::__is_hash_power2(__bc) ? std::__next_hash_pow2(size_t(std::ceil(float(size()) / max_load_factor()))) : - std::__next_prime(size_t(std::ceil(float(size()) / max_load_factor()))) + std::__is_hash_power2(__bc) ? std::__next_hash_pow2(size_t(__math::ceil(float(size()) / max_load_factor()))) : + std::__next_prime(size_t(__math::ceil(float(size()) / max_load_factor()))) ); if (__n < __bc) __do_rehash<_UniqueKeys>(__n); diff --git a/libcxx/include/__random/binomial_distribution.h b/libcxx/include/__random/binomial_distribution.h --- a/libcxx/include/__random/binomial_distribution.h +++ b/libcxx/include/__random/binomial_distribution.h @@ -10,9 +10,10 @@ #define _LIBCPP___RANDOM_BINOMIAL_DISTRIBUTION_H #include <__config> +#include <__math/exponential_functions.h> +#include <__math/logarithms.h> #include <__random/is_valid.h> #include <__random/uniform_real_distribution.h> -#include #include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) @@ -134,10 +135,10 @@ if (0 < __p_ && __p_ < 1) { __r0_ = static_cast((__t_ + 1) * __p_); - __pr_ = _VSTD::exp(std::__libcpp_lgamma(__t_ + 1.) - + __pr_ = __math::exp(std::__libcpp_lgamma(__t_ + 1.) - std::__libcpp_lgamma(__r0_ + 1.) - - std::__libcpp_lgamma(__t_ - __r0_ + 1.) + __r0_ * _VSTD::log(__p_) + - (__t_ - __r0_) * _VSTD::log(1 - __p_)); + std::__libcpp_lgamma(__t_ - __r0_ + 1.) + __r0_ * __math::log(__p_) + + (__t_ - __r0_) * __math::log(1 - __p_)); __odds_ratio_ = __p_ / (1 - __p_); } } diff --git a/libcxx/include/__random/cauchy_distribution.h b/libcxx/include/__random/cauchy_distribution.h --- a/libcxx/include/__random/cauchy_distribution.h +++ b/libcxx/include/__random/cauchy_distribution.h @@ -10,9 +10,9 @@ #define _LIBCPP___RANDOM_CAUCHY_DISTRIBUTION_H #include <__config> +#include <__math/trigonometric_functions.h> #include <__random/is_valid.h> #include <__random/uniform_real_distribution.h> -#include #include #include @@ -120,7 +120,7 @@ static_assert(__libcpp_random_is_valid_urng<_URNG>::value, ""); uniform_real_distribution __gen; // purposefully let tan arg get as close to pi/2 as it wants, tan will return a finite - return __p.a() + __p.b() * _VSTD::tan(3.1415926535897932384626433832795 * __gen(__g)); + return __p.a() + __p.b() * __math::tan(3.1415926535897932384626433832795 * __gen(__g)); } template diff --git a/libcxx/include/__random/clamp_to_integral.h b/libcxx/include/__random/clamp_to_integral.h --- a/libcxx/include/__random/clamp_to_integral.h +++ b/libcxx/include/__random/clamp_to_integral.h @@ -10,7 +10,10 @@ #define _LIBCPP___RANDOM_CLAMP_TO_INTEGRAL_H #include <__config> -#include +#include <__math/rounding_functions.h> +#include <__type_traits/is_floating_point.h> +#include <__type_traits/is_integral.h> +#include <__type_traits/is_same.h> #include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) @@ -44,7 +47,7 @@ _IntT __clamp_to_integral(_RealT __r) _NOEXCEPT { using _Lim = numeric_limits<_IntT>; const _IntT __max_val = __max_representable_int_for_float<_IntT, _RealT>(); - if (__r >= ::nextafter(static_cast<_RealT>(__max_val), INFINITY)) { + if (__r >= __math::nextafter(static_cast<_RealT>(__max_val), numeric_limits<_RealT>::infinity())) { return _Lim::max(); } else if (__r <= _Lim::lowest()) { return _Lim::min(); diff --git a/libcxx/include/__random/exponential_distribution.h b/libcxx/include/__random/exponential_distribution.h --- a/libcxx/include/__random/exponential_distribution.h +++ b/libcxx/include/__random/exponential_distribution.h @@ -10,10 +10,10 @@ #define _LIBCPP___RANDOM_EXPONENTIAL_DISTRIBUTION_H #include <__config> +#include <__math/logarithms.h> #include <__random/generate_canonical.h> #include <__random/is_valid.h> #include <__random/uniform_real_distribution.h> -#include #include #include @@ -112,7 +112,7 @@ exponential_distribution<_RealType>::operator()(_URNG& __g, const param_type& __p) { static_assert(__libcpp_random_is_valid_urng<_URNG>::value, ""); - return -_VSTD::log + return -__math::log ( result_type(1) - _VSTD::generate_canonical +#include <__math/logarithms.h> #include <__random/is_valid.h> #include <__random/uniform_real_distribution.h> -#include #include #include @@ -120,7 +120,7 @@ { static_assert(__libcpp_random_is_valid_urng<_URNG>::value, ""); return __p.a() - __p.b() * - _VSTD::log(-_VSTD::log(1-uniform_real_distribution()(__g))); + __math::log(-__math::log(1-uniform_real_distribution()(__g))); } template diff --git a/libcxx/include/__random/gamma_distribution.h b/libcxx/include/__random/gamma_distribution.h --- a/libcxx/include/__random/gamma_distribution.h +++ b/libcxx/include/__random/gamma_distribution.h @@ -10,10 +10,12 @@ #define _LIBCPP___RANDOM_GAMMA_DISTRIBUTION_H #include <__config> +#include <__math/exponential_functions.h> +#include <__math/logarithms.h> +#include <__math/roots.h> #include <__random/exponential_distribution.h> #include <__random/is_valid.h> #include <__random/uniform_real_distribution.h> -#include #include #include @@ -137,7 +139,7 @@ const result_type __w = __u * (1 - __u); if (__w != 0) { - const result_type __y = _VSTD::sqrt(__c / __w) * + const result_type __y = __math::sqrt(__c / __w) * (__u - result_type(0.5)); __x = __b + __y; if (__x >= 0) @@ -145,7 +147,7 @@ const result_type __z = 64 * __w * __w * __w * __v * __v; if (__z <= 1 - 2 * __y * __y / __x) break; - if (_VSTD::log(__z) <= 2 * (__b * _VSTD::log(__x / __b) - __y)) + if (__math::log(__z) <= 2 * (__b * __math::log(__x / __b) - __y)) break; } } @@ -159,14 +161,14 @@ const result_type __es = __egen(__g); if (__u <= 1 - __a) { - __x = _VSTD::pow(__u, 1 / __a); + __x = __math::pow(__u, 1 / __a); if (__x <= __es) break; } else { - const result_type __e = -_VSTD::log((1-__u)/__a); - __x = _VSTD::pow(1 - __a + __a * __e, 1 / __a); + const result_type __e = -__math::log((1-__u)/__a); + __x = __math::pow(1 - __a + __a * __e, 1 / __a); if (__x <= __e + __es) break; } diff --git a/libcxx/include/__random/lognormal_distribution.h b/libcxx/include/__random/lognormal_distribution.h --- a/libcxx/include/__random/lognormal_distribution.h +++ b/libcxx/include/__random/lognormal_distribution.h @@ -10,8 +10,8 @@ #define _LIBCPP___RANDOM_LOGNORMAL_DISTRIBUTION_H #include <__config> +#include <__math/exponential_functions.h> #include <__random/normal_distribution.h> -#include #include #include @@ -83,7 +83,7 @@ _LIBCPP_INLINE_VISIBILITY result_type operator()(_URNG& __g) { - return _VSTD::exp(__nd_(__g)); + return __math::exp(__nd_(__g)); } template @@ -91,7 +91,7 @@ result_type operator()(_URNG& __g, const param_type& __p) { typename normal_distribution::param_type __pn(__p.m(), __p.s()); - return _VSTD::exp(__nd_(__g, __pn)); + return __math::exp(__nd_(__g, __pn)); } // property functions diff --git a/libcxx/include/__random/normal_distribution.h b/libcxx/include/__random/normal_distribution.h --- a/libcxx/include/__random/normal_distribution.h +++ b/libcxx/include/__random/normal_distribution.h @@ -10,9 +10,10 @@ #define _LIBCPP___RANDOM_NORMAL_DISTRIBUTION_H #include <__config> +#include <__math/logarithms.h> +#include <__math/roots.h> #include <__random/is_valid.h> #include <__random/uniform_real_distribution.h> -#include #include #include @@ -152,7 +153,7 @@ __v = __uni(__g); __s = __u * __u + __v * __v; } while (__s > 1 || __s == 0); - result_type __fp = _VSTD::sqrt(-2 * _VSTD::log(__s) / __s); + result_type __fp = __math::sqrt(-2 * __math::log(__s) / __s); __v_ = __v * __fp; __v_hot_ = true; __up = __u * __fp; diff --git a/libcxx/include/__random/piecewise_linear_distribution.h b/libcxx/include/__random/piecewise_linear_distribution.h --- a/libcxx/include/__random/piecewise_linear_distribution.h +++ b/libcxx/include/__random/piecewise_linear_distribution.h @@ -11,6 +11,7 @@ #include <__algorithm/upper_bound.h> #include <__config> +#include <__math/roots.h> #include <__random/is_valid.h> #include <__random/uniform_real_distribution.h> #include @@ -306,7 +307,7 @@ const result_type __bk1 = __p.__b_[__k+1]; const result_type __deltab = __bk1 - __bk; return (__bk * __dk1 - __bk1 * __dk + - _VSTD::sqrt(__deltab * (__deltab * __dk * __dk + 2 * __deltad * __u))) / + __math::sqrt(__deltab * (__deltab * __dk * __dk + 2 * __deltad * __u))) / __deltad; } diff --git a/libcxx/include/__random/poisson_distribution.h b/libcxx/include/__random/poisson_distribution.h --- a/libcxx/include/__random/poisson_distribution.h +++ b/libcxx/include/__random/poisson_distribution.h @@ -10,12 +10,17 @@ #define _LIBCPP___RANDOM_POISSON_DISTRIBUTION_H #include <__config> +#include <__math/exponential_functions.h> +#include <__math/logarithms.h> +#include <__math/roots.h> +#include <__math/rounding_functions.h> +#include <__math/traits.h> #include <__random/clamp_to_integral.h> #include <__random/exponential_distribution.h> #include <__random/is_valid.h> #include <__random/normal_distribution.h> #include <__random/uniform_real_distribution.h> -#include +#include #include #include @@ -125,13 +130,13 @@ // According to the standard `inf` is a valid input, but it causes the // distribution to hang, so we replace it with the maximum representable // mean. - : __mean_(isinf(__mean) ? numeric_limits::max() : __mean) + : __mean_(__math::isinf(__mean) ? numeric_limits::max() : __mean) { if (__mean_ < 10) { __s_ = 0; __d_ = 0; - __l_ = _VSTD::exp(-__mean_); + __l_ = __math::exp(-__mean_); __omega_ = 0; __c3_ = 0; __c2_ = 0; @@ -141,9 +146,9 @@ } else { - __s_ = _VSTD::sqrt(__mean_); + __s_ = __math::sqrt(__mean_); __d_ = 6 * __mean_ * __mean_; - __l_ = _VSTD::trunc(__mean_ - 1.1484); + __l_ = __math::trunc(__mean_ - 1.1484); __omega_ = .3989423 / __s_; double __b1 = .4166667E-1 / __mean_; double __b2 = .3 * __b1 * __b1; @@ -176,7 +181,7 @@ double __u; if (__g > 0) { - __tx = _VSTD::trunc(__g); + __tx = __math::trunc(__g); if (__tx >= __pr.__l_) return _VSTD::__clamp_to_integral(__tx); __difmuk = __pr.__mean_ - __tx; @@ -198,7 +203,7 @@ __u += __u - 1; __t = 1.8 + (__u < 0 ? -__e : __e); } while (__t <= -.6744); - __tx = _VSTD::trunc(__pr.__mean_ + __pr.__s_ * __t); + __tx = __math::trunc(__pr.__mean_ + __pr.__s_ * __t); __difmuk = __pr.__mean_ - __tx; __using_exp_dist = true; } @@ -209,7 +214,7 @@ const double __fac[] = {1, 1, 2, 6, 24, 120, 720, 5040, 40320, 362880}; __px = -__pr.__mean_; - __py = _VSTD::pow(__pr.__mean_, (double)__tx) / __fac[static_cast(__tx)]; + __py = __math::pow(__pr.__mean_, (double)__tx) / __fac[static_cast(__tx)]; } else { @@ -217,12 +222,12 @@ __del -= 4.8 * __del * __del * __del; double __v = __difmuk / __tx; if (_VSTD::abs(__v) > 0.25) - __px = __tx * _VSTD::log(1 + __v) - __difmuk - __del; + __px = __tx * __math::log(1 + __v) - __difmuk - __del; else __px = __tx * __v * __v * (((((((.1250060 * __v + -.1384794) * __v + .1421878) * __v + -.1661269) * __v + .2000118) * __v + -.2500068) * __v + .3333333) * __v + -.5) - __del; - __py = .3989423 / _VSTD::sqrt(__tx); + __py = .3989423 / __math::sqrt(__tx); } double __r = (0.5 - __difmuk) / __pr.__s_; double __r2 = __r * __r; @@ -231,13 +236,13 @@ __r2 + __pr.__c1_) * __r2 + __pr.__c0_); if (__using_exp_dist) { - if (__pr.__c_ * _VSTD::abs(__u) <= __py * _VSTD::exp(__px + __e) - - __fy * _VSTD::exp(__fx + __e)) + if (__pr.__c_ * _VSTD::abs(__u) <= __py * __math::exp(__px + __e) - + __fy * __math::exp(__fx + __e)) break; } else { - if (__fy - __u * __fy <= __py * _VSTD::exp(__px - __fx)) + if (__fy - __u * __fy <= __py * __math::exp(__px - __fx)) break; } } diff --git a/libcxx/include/__random/student_t_distribution.h b/libcxx/include/__random/student_t_distribution.h --- a/libcxx/include/__random/student_t_distribution.h +++ b/libcxx/include/__random/student_t_distribution.h @@ -10,10 +10,10 @@ #define _LIBCPP___RANDOM_STUDENT_T_DISTRIBUTION_H #include <__config> +#include <__math/roots.h> #include <__random/gamma_distribution.h> #include <__random/is_valid.h> #include <__random/normal_distribution.h> -#include #include #include @@ -115,7 +115,7 @@ { static_assert(__libcpp_random_is_valid_urng<_URNG>::value, ""); gamma_distribution __gd(__p.n() * .5, 2); - return __nd_(__g) * _VSTD::sqrt(__p.n()/__gd(__g)); + return __nd_(__g) * __math::sqrt(__p.n()/__gd(__g)); } template diff --git a/libcxx/include/__random/weibull_distribution.h b/libcxx/include/__random/weibull_distribution.h --- a/libcxx/include/__random/weibull_distribution.h +++ b/libcxx/include/__random/weibull_distribution.h @@ -10,8 +10,8 @@ #define _LIBCPP___RANDOM_WEIBULL_DISTRIBUTION_H #include <__config> +#include <__math/exponential_functions.h> #include <__random/exponential_distribution.h> -#include #include #include @@ -86,7 +86,7 @@ _LIBCPP_INLINE_VISIBILITY result_type operator()(_URNG& __g, const param_type& __p) {return __p.b() * - _VSTD::pow(exponential_distribution()(__g), 1/__p.a());} + __math::pow(exponential_distribution()(__g), 1/__p.a());} // property functions _LIBCPP_INLINE_VISIBILITY diff --git a/libcxx/include/charconv b/libcxx/include/charconv --- a/libcxx/include/charconv +++ b/libcxx/include/charconv @@ -80,7 +80,6 @@ #include <__charconv/traits.h> #include <__config> #include <__system_error/errc.h> -#include // for log2f #include #include @@ -93,6 +92,7 @@ _LIBCPP_END_NAMESPACE_STD #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 +# include # include # include # include diff --git a/libcxx/include/chrono b/libcxx/include/chrono --- a/libcxx/include/chrono +++ b/libcxx/include/chrono @@ -812,6 +812,7 @@ #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER == 20 # include +# include #endif #endif // _LIBCPP_CHRONO diff --git a/libcxx/include/compare b/libcxx/include/compare --- a/libcxx/include/compare +++ b/libcxx/include/compare @@ -162,6 +162,7 @@ #endif #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 +# include # include #endif diff --git a/libcxx/include/ctgmath b/libcxx/include/ctgmath --- a/libcxx/include/ctgmath +++ b/libcxx/include/ctgmath @@ -19,6 +19,10 @@ */ #include <__assert> // all public C++ headers provide the assertion handler + +// standard-mandated includes + +// [c.math] (C++14) #include #include diff --git a/libcxx/include/format b/libcxx/include/format --- a/libcxx/include/format +++ b/libcxx/include/format @@ -203,4 +203,8 @@ # pragma GCC system_header #endif +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 +# include +#endif + #endif // _LIBCPP_FORMAT diff --git a/libcxx/include/numeric b/libcxx/include/numeric --- a/libcxx/include/numeric +++ b/libcxx/include/numeric @@ -146,7 +146,6 @@ #include <__assert> // all public C++ headers provide the assertion handler #include <__config> -#include // for isnormal #include #include <__numeric/accumulate.h> @@ -170,6 +169,7 @@ #endif #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 +# include # include # include # include diff --git a/libcxx/include/print b/libcxx/include/print --- a/libcxx/include/print +++ b/libcxx/include/print @@ -386,4 +386,8 @@ _LIBCPP_END_NAMESPACE_STD +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 +# include +#endif + #endif // _LIBCPP_PRINT diff --git a/libcxx/include/unordered_map b/libcxx/include/unordered_map --- a/libcxx/include/unordered_map +++ b/libcxx/include/unordered_map @@ -2796,6 +2796,7 @@ #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include +# include # include # include # include diff --git a/libcxx/include/unordered_set b/libcxx/include/unordered_set --- a/libcxx/include/unordered_set +++ b/libcxx/include/unordered_set @@ -1972,6 +1972,7 @@ #endif #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 +# include # include # include # include diff --git a/libcxx/test/libcxx/transitive_includes/cxx23.csv b/libcxx/test/libcxx/transitive_includes/cxx23.csv --- a/libcxx/test/libcxx/transitive_includes/cxx23.csv +++ b/libcxx/test/libcxx/transitive_includes/cxx23.csv @@ -61,14 +61,12 @@ bitset version ccomplex complex charconv cerrno -charconv cmath charconv cstddef charconv cstdint charconv initializer_list charconv limits charconv new chrono array -chrono cmath chrono compare chrono cstddef chrono cstdint @@ -105,7 +103,6 @@ codecvt string codecvt typeinfo codecvt version -compare cmath compare cstddef compare cstdint compare limits @@ -212,7 +209,6 @@ filesystem string_view filesystem version format array -format cmath format cstddef format cstdint format initializer_list @@ -418,7 +414,6 @@ new version numbers version numeric climits -numeric cmath numeric cstddef numeric cstdint numeric cstring @@ -456,7 +451,6 @@ ostream version print array print cerrno -print cmath print cstddef print cstdint print cstdio @@ -479,9 +473,9 @@ queue new queue vector queue version -random cmath random cstddef random cstdint +random cstdlib random initializer_list random iosfwd random limits @@ -652,7 +646,6 @@ typeindex version typeinfo cstddef typeinfo cstdint -unordered_map cmath unordered_map compare unordered_map cstddef unordered_map cstdint @@ -664,7 +657,6 @@ unordered_map stdexcept unordered_map tuple unordered_map version -unordered_set cmath unordered_set compare unordered_set cstddef unordered_set cstdint diff --git a/libcxx/test/libcxx/transitive_includes/cxx26.csv b/libcxx/test/libcxx/transitive_includes/cxx26.csv --- a/libcxx/test/libcxx/transitive_includes/cxx26.csv +++ b/libcxx/test/libcxx/transitive_includes/cxx26.csv @@ -61,14 +61,12 @@ bitset version ccomplex complex charconv cerrno -charconv cmath charconv cstddef charconv cstdint charconv initializer_list charconv limits charconv new chrono array -chrono cmath chrono compare chrono cstddef chrono cstdint @@ -105,7 +103,6 @@ codecvt string codecvt typeinfo codecvt version -compare cmath compare cstddef compare cstdint compare limits @@ -212,7 +209,6 @@ filesystem string_view filesystem version format array -format cmath format cstddef format cstdint format initializer_list @@ -418,7 +414,6 @@ new version numbers version numeric climits -numeric cmath numeric cstddef numeric cstdint numeric cstring @@ -456,7 +451,6 @@ ostream version print array print cerrno -print cmath print cstddef print cstdint print cstdio @@ -479,9 +473,9 @@ queue new queue vector queue version -random cmath random cstddef random cstdint +random cstdlib random initializer_list random iosfwd random limits @@ -652,7 +646,6 @@ typeindex version typeinfo cstddef typeinfo cstdint -unordered_map cmath unordered_map compare unordered_map cstddef unordered_map cstdint @@ -664,7 +657,6 @@ unordered_map stdexcept unordered_map tuple unordered_map version -unordered_set cmath unordered_set compare unordered_set cstddef unordered_set cstdint diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval.pass.cpp @@ -12,11 +12,12 @@ // template result_type operator()(_URNG& g); -#include -#include -#include #include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval_param.pass.cpp @@ -12,11 +12,12 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include -#include -#include #include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.PR44847.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.PR44847.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.PR44847.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.PR44847.pass.cpp @@ -18,11 +18,12 @@ // Serializing/deserializing the state of the RNG requires iostreams // UNSUPPORTED: no-localization -#include -#include -#include #include +#include +#include +#include #include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.pass.cpp @@ -16,6 +16,7 @@ // template result_type operator()(_URNG& g); #include +#include #include #include #include diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval_param.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include +#include +#include #include +#include #include -#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval.pass.cpp @@ -16,6 +16,7 @@ // template result_type operator()(_URNG& g); #include +#include #include #include #include diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval_param.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include +#include +#include #include +#include #include -#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g); -#include +#include +#include #include +#include #include -#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval_param.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include +#include +#include #include +#include #include -#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval.pass.cpp @@ -15,11 +15,12 @@ // template result_type operator()(_URNG& g); -#include #include -#include -#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval_param.pass.cpp @@ -15,11 +15,12 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include -#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g); -#include #include -#include +#include #include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval_param.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include +#include #include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval.pass.cpp @@ -15,11 +15,12 @@ // template result_type operator()(_URNG& g); -#include #include -#include -#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval_param.pass.cpp @@ -15,11 +15,12 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include -#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g); -#include #include -#include +#include #include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval_param.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include +#include #include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval.pass.cpp @@ -15,11 +15,12 @@ // template result_type operator()(_URNG& g); -#include #include -#include -#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval_param.pass.cpp @@ -15,11 +15,12 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include -#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g); -#include #include -#include +#include #include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval_param.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include +#include #include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g); -#include #include -#include +#include #include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval_param.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include +#include #include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.poisson/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.poisson/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.poisson/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.poisson/eval_param.pass.cpp @@ -15,10 +15,11 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include +#include #include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval.pass.cpp @@ -15,11 +15,12 @@ // template result_type operator()(_URNG& g); -#include #include -#include -#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval_param.pass.cpp @@ -15,11 +15,12 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include -#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval.pass.cpp @@ -15,12 +15,13 @@ // template result_type operator()(_URNG& g); -#include -#include -#include -#include #include // for sort #include +#include +#include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval_param.pass.cpp @@ -15,13 +15,14 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include -#include -#include #include +#include #include +#include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval.pass.cpp @@ -15,13 +15,14 @@ // template result_type operator()(_URNG& g); -#include #include -#include -#include -#include #include +#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval_param.pass.cpp @@ -15,13 +15,14 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include -#include -#include -#include #include // for sort #include +#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval.pass.cpp @@ -17,6 +17,7 @@ #include #include +#include #include #include #include diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval_param.pass.cpp @@ -13,11 +13,12 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include -#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval.pass.cpp @@ -15,11 +15,12 @@ // template result_type operator()(_URNG& g); -#include #include -#include -#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval_param.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval_param.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval_param.pass.cpp @@ -13,11 +13,12 @@ // template result_type operator()(_URNG& g, const param_type& parm); -#include #include -#include -#include +#include #include +#include +#include +#include #include "test_macros.h" diff --git a/libcxx/test/std/ranges/range.factories/range.repeat.view/size.pass.cpp b/libcxx/test/std/ranges/range.factories/range.repeat.view/size.pass.cpp --- a/libcxx/test/std/ranges/range.factories/range.repeat.view/size.pass.cpp +++ b/libcxx/test/std/ranges/range.factories/range.repeat.view/size.pass.cpp @@ -10,11 +10,12 @@ // constexpr auto size() const requires (!same_as); -#include -#include -#include #include +#include +#include #include +#include +#include template concept has_size = requires(T&& view) {