Gcc-3.2, statistic_tests.cpp and <limits>
Hi, the PR libstdc++/6718 in the Gcc bug database is about a run time problem with this Boost testcase: paolo:~/Programming/c++/boost_1_29_0/libs/random> a.out Confidence level: 0.99; 1-alpha = 0.01; chi_square(19, 36.191) = 0.99 Running tests on minstd_rand KS: 4750* [0] 9500* [0] equidistribution: a.out: statistic_tests.hpp:571: void generic_counter<RandomA ccessContainer>::operator()(int) [with RandomAccessContainer = std::vector<int, std::allocator<int> >] : Assertion `static_cast<unsigned int>(i) < container.size()' failed. Abort According to Nathan Sidwell and Gaby Dos Reis analysis the problem is due to well known issues with numeric_limits<double>::infinity of 3.2's run time library for which unexpectedly Boost provides no work arounds. On the contrary, 2.95.x worked just fine. Please let me know if you need any additional information, ciao, Paolo.
--- In Boost-Users@y..., "pcarlini.rm" <pcarlini@r...> wrote: On the contrary, 2.95.x worked just fine. Well, not really, sorry, but better: paolo:~/Programming/c++/boost_1_29_0/libs/random> a.out Confidence level: 0.99; 1-alpha = 0.01; chi_square(19, 36.191) = 0.99 Running tests on minstd_rand KS: 4750* [0] 9500* [0] equidistribution: 10.8 20.4 2D: 17.36 33.12 runs: up: 4750* [0] 9500* [0] down: 4750* [0] 9500* [0] gaps: 4750* [0] 9500* [0] poker: 20.08 19.92 coupon collector: 15.6 13.2 permutation: 4750* [0] 9500* [0] maximum-of-t: 15.44 12.32 birthday spacing: a.out: statistic_tests.hpp:371: void birthday_spacing_experiment::run<boost::uniform_int<boost::random::linear_congruential<int,48271,0,2147483647,399268537>,int>, generic_counter<vector<int,allocator<int> > >
(boost::uniform_int<boost::random::linear_congruential<int,48271,0,2147483647,399268537>,int>, generic_counter<vector<int,allocator<int> > > &, int) const: Assertion `f.max() == static_cast<result_type>(m-1)' failed. Abort
By the way, this is the same behaviour of current 3.3 (experimental) Thanks again for any feedback, Paolo.
participants (1)
-
pcarlini.rm