id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 10064,generate_uniform_real may go into infinite loop,Markus Faerber ,No-Maintainer,"See uniform_real_distribution.hpp: template T generate_uniform_real( Engine& eng, T min_value, T max_value, boost::mpl::true_ /** is_integral */) { for(;;) { typedef T result_type; typedef typename Engine::result_type base_result; result_type numerator = static_cast(subtract()(eng(), (eng.min)())); result_type divisor = static_cast(subtract()((eng.max)(), (eng.min)())) + 1; BOOST_ASSERT(divisor > 0); BOOST_ASSERT(numerator >= 0 && numerator <= divisor); T result = numerator / divisor * (max_value - min_value) + min_value; if(result < max_value) return result; } } Please add a ""BOOST_ASSERT(max_value > min_value);"". If one declares something like boost::random::mt19937 mt; boost::random::uniform_real_distribution dist(0.0, 0.0); dist(mt) makes generate_uniform_real go into an infinite loop. Thank you and best regards.",Bugs,new,To Be Determined,random,Boost 1.54.0,Problem,,,