src/cxx_supportlib/vendor-modified/boost/random/sobol.hpp in passenger-6.0.8 vs src/cxx_supportlib/vendor-modified/boost/random/sobol.hpp in passenger-6.0.9

- old
+ new

@@ -9,10 +9,11 @@ #ifndef BOOST_RANDOM_SOBOL_HPP #define BOOST_RANDOM_SOBOL_HPP #include <boost/random/detail/sobol_table.hpp> #include <boost/random/detail/gray_coded_qrng.hpp> +#include <boost/assert.hpp> namespace boost { namespace random { /** @cond */ @@ -56,13 +57,13 @@ // Initialize in remaining dimensions. for (std::size_t dim = 1; dim < dimension; ++dim) { const typename SobolTables::value_type poly = SobolTables::polynomial(dim-1); - if (poly > std::numeric_limits<value_type>::max()) { + if (poly > (std::numeric_limits<value_type>::max)()) { boost::throw_exception( std::range_error("sobol: polynomial value outside the given value type range") ); } - const unsigned degree = multiprecision::msb(poly); // integer log2(poly) + const unsigned degree = qrng_detail::msb(poly); // integer log2(poly) // set initial values of m from table for (unsigned k = 0; k != degree; ++k) cj[dimension*k + dim] = SobolTables::minit(dim-1, k);