@@ -423,6 +423,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_UIntType _M_x;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Compares two linear congruential random number generator
* objects of the same type for inequality.
@@ -441,7 +442,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
const std::linear_congruential_engine<_UIntType, __a,
__c, __m>& __rhs)
{ return !(__lhs == __rhs); }
-
+#endif
/**
* A generalized feedback shift register discrete random number generator.
@@ -656,6 +657,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
size_t _M_p;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Compares two % mersenne_twister_engine random number generator
* objects of the same type for inequality.
@@ -679,7 +681,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
const std::mersenne_twister_engine<_UIntType, __w, __n, __m,
__r, __a, __u, __d, __s, __b, __t, __c, __l, __f>& __rhs)
{ return !(__lhs == __rhs); }
-
+#endif
/**
* @brief The Marsaglia-Zaman generator.
@@ -862,6 +864,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
size_t _M_p; ///< Current index of x(i - r).
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Compares two % subtract_with_carry_engine random number
* generator objects of the same type for inequality.
@@ -881,7 +884,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
const std::subtract_with_carry_engine<_UIntType, __w,
__s, __r>& __rhs)
{ return !(__lhs == __rhs); }
-
+#endif
/**
* Produces random numbers from some base engine by discarding blocks of
@@ -1087,6 +1090,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
size_t _M_n;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Compares two %discard_block_engine random number generator
* objects of the same type for inequality.
@@ -1105,7 +1109,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
const std::discard_block_engine<_RandomNumberEngine, __p,
__r>& __rhs)
{ return !(__lhs == __rhs); }
-
+#endif
/**
* Produces random numbers by combining random numbers from some base
@@ -1284,6 +1288,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_RandomNumberEngine _M_b;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Compares two %independent_bits_engine random number generator
* objects of the same type for inequality.
@@ -1303,6 +1308,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
const std::independent_bits_engine<_RandomNumberEngine, __w,
_UIntType>& __rhs)
{ return !(__lhs == __rhs); }
+#endif
/**
* @brief Inserts the current state of a %independent_bits_engine random
@@ -1541,6 +1547,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
result_type _M_y;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* Compares two %shuffle_order_engine random number generator objects
* of the same type for inequality.
@@ -1559,7 +1566,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
const std::shuffle_order_engine<_RandomNumberEngine,
__k>& __rhs)
{ return !(__lhs == __rhs); }
-
+#endif
/**
* The classic Minimum Standard rand0 of Lewis, Goodman, and Miller.
@@ -1703,6 +1710,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// std::uniform_int_distribution is defined in <bits/uniform_int_dist.h>
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two uniform integer distributions have
* different parameters.
@@ -1712,6 +1720,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::uniform_int_distribution<_IntType>& __d1,
const std::uniform_int_distribution<_IntType>& __d2)
{ return !(__d1 == __d2); }
+#endif
/**
* @brief Inserts a %uniform_int_distribution random number
@@ -1786,9 +1795,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_a == __p2._M_a && __p1._M_b == __p2._M_b; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_a;
@@ -1924,6 +1935,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two uniform real distributions have
* different parameters.
@@ -1933,6 +1945,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::uniform_real_distribution<_IntType>& __d1,
const std::uniform_real_distribution<_IntType>& __d2)
{ return !(__d1 == __d2); }
+#endif
/**
* @brief Inserts a %uniform_real_distribution random number
@@ -2017,9 +2030,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ return (__p1._M_mean == __p2._M_mean
&& __p1._M_stddev == __p2._M_stddev); }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_mean;
@@ -2182,6 +2197,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
bool _M_saved_available = false;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two normal distributions are different.
*/
@@ -2190,7 +2206,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::normal_distribution<_RealType>& __d1,
const std::normal_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A lognormal_distribution random number distribution.
@@ -2235,9 +2251,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_m == __p2._M_m && __p1._M_s == __p2._M_s; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_m;
@@ -2393,6 +2411,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::normal_distribution<result_type> _M_nd;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two lognormal distributions are different.
*/
@@ -2401,7 +2420,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::lognormal_distribution<_RealType>& __d1,
const std::lognormal_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A gamma continuous distribution for random numbers.
@@ -2451,9 +2470,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ return (__p1._M_alpha == __p2._M_alpha
&& __p1._M_beta == __p2._M_beta); }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void
@@ -2624,6 +2645,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::normal_distribution<result_type> _M_nd;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two gamma distributions are different.
*/
@@ -2632,7 +2654,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::gamma_distribution<_RealType>& __d1,
const std::gamma_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A chi_squared_distribution random number distribution.
@@ -2670,9 +2692,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_n == __p2._M_n; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_n;
@@ -2848,6 +2872,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::gamma_distribution<result_type> _M_gd;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two Chi-squared distributions are different.
*/
@@ -2856,7 +2881,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::chi_squared_distribution<_RealType>& __d1,
const std::chi_squared_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A cauchy_distribution random number distribution.
@@ -2898,9 +2923,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_a == __p2._M_a && __p1._M_b == __p2._M_b; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_a;
@@ -3021,6 +3048,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two Cauchy distributions have
* different parameters.
@@ -3030,6 +3058,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::cauchy_distribution<_RealType>& __d1,
const std::cauchy_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
+#endif
/**
* @brief Inserts a %cauchy_distribution random number distribution
@@ -3106,9 +3135,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_m == __p2._M_m && __p1._M_n == __p2._M_n; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_m;
@@ -3286,6 +3317,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::gamma_distribution<result_type> _M_gd_x, _M_gd_y;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two Fisher f distributions are different.
*/
@@ -3294,6 +3326,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::fisher_f_distribution<_RealType>& __d1,
const std::fisher_f_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
+#endif
/**
* @brief A student_t_distribution random number distribution.
@@ -3334,9 +3367,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_n == __p2._M_n; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_n;
@@ -3508,6 +3543,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::gamma_distribution<result_type> _M_gd;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two Student t distributions are different.
*/
@@ -3516,7 +3552,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::student_t_distribution<_RealType>& __d1,
const std::student_t_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/// @} group random_distributions_normal
@@ -3560,9 +3596,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_p == __p2._M_p; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
double _M_p;
@@ -3696,6 +3734,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two Bernoulli distributions have
* different parameters.
@@ -3704,6 +3743,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::bernoulli_distribution& __d1,
const std::bernoulli_distribution& __d2)
{ return !(__d1 == __d2); }
+#endif
/**
* @brief Inserts a %bernoulli_distribution random number distribution
@@ -3788,9 +3828,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_t == __p2._M_t && __p1._M_p == __p2._M_p; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void
@@ -3971,6 +4013,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::normal_distribution<double> _M_nd;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two binomial distributions are different.
*/
@@ -3979,7 +4022,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::binomial_distribution<_IntType>& __d1,
const std::binomial_distribution<_IntType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A discrete geometric random number distribution.
@@ -4022,9 +4065,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_p == __p2._M_p; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void
@@ -4149,6 +4194,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two geometric distributions have
* different parameters.
@@ -4158,6 +4204,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::geometric_distribution<_IntType>& __d1,
const std::geometric_distribution<_IntType>& __d2)
{ return !(__d1 == __d2); }
+#endif
/**
* @brief Inserts a %geometric_distribution random number distribution
@@ -4234,9 +4281,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_k == __p2._M_k && __p1._M_p == __p2._M_p; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_IntType _M_k;
@@ -4404,6 +4453,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::gamma_distribution<double> _M_gd;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two negative binomial distributions are different.
*/
@@ -4412,7 +4462,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::negative_binomial_distribution<_IntType>& __d1,
const std::negative_binomial_distribution<_IntType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/// @} group random_distributions_bernoulli
@@ -4463,9 +4513,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_mean == __p2._M_mean; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
// Hosts either log(mean) or the threshold of the simple method.
@@ -4630,6 +4682,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::normal_distribution<double> _M_nd;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two Poisson distributions are different.
*/
@@ -4638,7 +4691,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::poisson_distribution<_IntType>& __d1,
const std::poisson_distribution<_IntType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief An exponential continuous distribution for random numbers.
@@ -4687,9 +4740,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_lambda == __p2._M_lambda; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_lambda;
@@ -4820,6 +4875,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two exponential distributions have different
* parameters.
@@ -4829,6 +4885,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::exponential_distribution<_RealType>& __d1,
const std::exponential_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
+#endif
/**
* @brief Inserts a %exponential_distribution random number distribution
@@ -4904,9 +4961,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_a == __p2._M_a && __p1._M_b == __p2._M_b; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_a;
@@ -5030,6 +5089,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two Weibull distributions have different
* parameters.
@@ -5039,6 +5099,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::weibull_distribution<_RealType>& __d1,
const std::weibull_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
+#endif
/**
* @brief Inserts a %weibull_distribution random number distribution
@@ -5114,9 +5175,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_a == __p2._M_a && __p1._M_b == __p2._M_b; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_a;
@@ -5240,6 +5303,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two extreme value distributions have different
* parameters.
@@ -5249,6 +5313,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::extreme_value_distribution<_RealType>& __d1,
const std::extreme_value_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
+#endif
/**
* @brief Inserts a %extreme_value_distribution random number distribution
@@ -5333,9 +5398,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_prob == __p2._M_prob; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void
@@ -5505,6 +5572,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two discrete distributions have different
* parameters.
@@ -5514,7 +5582,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::discrete_distribution<_IntType>& __d1,
const std::discrete_distribution<_IntType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A piecewise_constant_distribution random number distribution.
@@ -5579,9 +5647,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_int == __p2._M_int && __p1._M_den == __p2._M_den; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void
@@ -5776,6 +5846,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two piecewise constant distributions have
* different parameters.
@@ -5785,7 +5856,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::piecewise_constant_distribution<_RealType>& __d1,
const std::piecewise_constant_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A piecewise_linear_distribution random number distribution.
@@ -5850,9 +5921,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_int == __p2._M_int && __p1._M_den == __p2._M_den; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void
@@ -6049,6 +6122,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two piecewise linear distributions have
* different parameters.
@@ -6058,7 +6132,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const std::piecewise_linear_distribution<_RealType>& __d1,
const std::piecewise_linear_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/// @} group random_distributions_poisson
@@ -208,7 +208,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
void _M_period_certification();
};
-
+#if __cpp_impl_three_way_comparison < 201907L
template<typename _UIntType, size_t __m,
size_t __pos1, size_t __sl1, size_t __sl2,
size_t __sr1, size_t __sr2,
@@ -224,7 +224,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__m, __pos1, __sl1, __sl2, __sr1, __sr2, __msk1, __msk2, __msk3,
__msk4, __parity1, __parity2, __parity3, __parity4>& __rhs)
{ return !(__lhs == __rhs); }
-
+#endif
/* Definitions for the SIMD-oriented Fast Mersenne Twister as defined
* in the C implementation by Daito and Matsumoto, as both a 32-bit
@@ -451,9 +451,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ return (__p1._M_alpha == __p2._M_alpha
&& __p1._M_beta == __p2._M_beta); }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void
@@ -616,6 +618,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two beta distributions are different.
*/
@@ -624,7 +627,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const __gnu_cxx::beta_distribution<_RealType>& __d1,
const __gnu_cxx::beta_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A multi-variate normal continuous distribution for random numbers.
@@ -735,9 +738,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_mean == __p2._M_mean && __p1._M_t == __p2._M_t; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
template <typename _InputIterator1, typename _InputIterator2>
@@ -943,6 +948,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::normal_distribution<_RealType> _M_nd;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two multi-variate normal distributions are
* different.
@@ -954,7 +960,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
const __gnu_cxx::normal_mv_distribution<_Dimen, _RealType>&
__d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A Rice continuous distribution for random numbers.
@@ -1014,9 +1020,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_nu == __p2._M_nu && __p1._M_sigma == __p2._M_sigma; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void _M_initialize();
@@ -1209,6 +1217,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::normal_distribution<result_type> _M_ndy;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two Rice distributions are not equal.
*/
@@ -1217,7 +1226,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const rice_distribution<_RealType1>& __d1,
const rice_distribution<_RealType1>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A Nakagami continuous distribution for random numbers.
@@ -1268,9 +1277,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_mu == __p2._M_mu && __p1._M_omega == __p2._M_omega; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void _M_initialize();
@@ -1442,6 +1453,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::gamma_distribution<result_type> _M_gd;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two Nakagami distributions are not equal.
*/
@@ -1450,7 +1462,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const nakagami_distribution<_RealType>& __d1,
const nakagami_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A Pareto continuous distribution for random numbers.
@@ -1513,9 +1525,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_alpha == __p2._M_alpha && __p1._M_mu == __p2._M_mu; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void _M_initialize();
@@ -1691,6 +1705,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::uniform_real_distribution<result_type> _M_ud;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two Pareto distributions are not equal.
*/
@@ -1699,7 +1714,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const pareto_distribution<_RealType>& __d1,
const pareto_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A K continuous distribution for random numbers.
@@ -1770,9 +1785,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
&& __p1._M_nu == __p2._M_nu;
}
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void _M_initialize();
@@ -1950,6 +1967,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::gamma_distribution<result_type> _M_gd2;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two K distributions are not equal.
*/
@@ -1958,7 +1976,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const k_distribution<_RealType>& __d1,
const k_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief An arcsine continuous distribution for random numbers.
@@ -2012,9 +2030,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_a == __p2._M_a && __p1._M_b == __p2._M_b; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void _M_initialize();
@@ -2191,6 +2211,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::uniform_real_distribution<result_type> _M_ud;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two arcsine distributions are not equal.
*/
@@ -2199,7 +2220,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const arcsine_distribution<_RealType>& __d1,
const arcsine_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A Hoyt continuous distribution for random numbers.
@@ -2260,9 +2281,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_q == __p2._M_q && __p1._M_omega == __p2._M_omega; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void _M_initialize();
@@ -2436,6 +2459,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::exponential_distribution<result_type> _M_ed;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two Hoyt distributions are not equal.
*/
@@ -2444,7 +2468,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const hoyt_distribution<_RealType>& __d1,
const hoyt_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A triangular distribution for random numbers.
@@ -2516,9 +2540,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
&& __p1._M_c == __p2._M_c);
}
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
@@ -2700,6 +2726,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two triangle distributions are different.
*/
@@ -2708,7 +2735,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const __gnu_cxx::triangular_distribution<_RealType>& __d1,
const __gnu_cxx::triangular_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A von Mises distribution for random numbers.
@@ -2776,9 +2803,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_mu == __p2._M_mu && __p1._M_kappa == __p2._M_kappa; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_mu;
@@ -2942,6 +2971,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two von Mises distributions are different.
*/
@@ -2950,7 +2980,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const __gnu_cxx::von_mises_distribution<_RealType>& __d1,
const __gnu_cxx::von_mises_distribution<_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A discrete hypergeometric random number distribution.
@@ -3024,9 +3054,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
&& (__p1._M_K == __p2._M_K)
&& (__p1._M_n == __p2._M_n); }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
@@ -3212,6 +3244,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two hypergeometric distributions are different.
*/
@@ -3220,6 +3253,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const __gnu_cxx::hypergeometric_distribution<_UIntType>& __d1,
const __gnu_cxx::hypergeometric_distribution<_UIntType>& __d2)
{ return !(__d1 == __d2); }
+#endif
/**
* @brief A logistic continuous distribution for random numbers.
@@ -3280,9 +3314,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_a == __p2._M_a && __p1._M_b == __p2._M_b; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
void _M_initialize();
@@ -3443,6 +3479,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
param_type _M_param;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two logistic distributions are not equal.
*/
@@ -3451,7 +3488,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator!=(const logistic_distribution<_RealType1>& __d1,
const logistic_distribution<_RealType1>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A distribution for random coordinates on a unit sphere.
@@ -3479,9 +3516,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type&, const param_type&)
{ return true; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type&, const param_type&)
{ return false; }
+#endif
};
/**
@@ -3636,6 +3675,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::normal_distribution<_RealType> _M_nd;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two uniform on sphere distributions are different.
*/
@@ -3646,7 +3686,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
const __gnu_cxx::uniform_on_sphere_distribution<_Dimen,
_RealType>& __d2)
{ return !(__d1 == __d2); }
-
+#endif
/**
* @brief A distribution for random coordinates inside a unit sphere.
@@ -3686,9 +3726,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator==(const param_type& __p1, const param_type& __p2)
{ return __p1._M_radius == __p2._M_radius; }
+#if __cpp_impl_three_way_comparison < 201907L
friend bool
operator!=(const param_type& __p1, const param_type& __p2)
{ return !(__p1 == __p2); }
+#endif
private:
_RealType _M_radius;
@@ -3862,6 +3904,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
uniform_on_sphere_distribution<_Dimen, _RealType> _M_uosd;
};
+#if __cpp_impl_three_way_comparison < 201907L
/**
* @brief Return true if two uniform on sphere distributions are different.
*/
@@ -3872,6 +3915,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
const __gnu_cxx::uniform_inside_sphere_distribution<_Dimen,
_RealType>& __d2)
{ return !(__d1 == __d2); }
+#endif
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace __gnu_cxx