
Martin Wille wrote:
Vladimir Prus wrote:
Marin, the intel-linux-9.0 failure:
looks like segfault or something like that -- no errors messages, and non-zero return status. Can you run the test manually and tell what's going on?
segfault.
No helpful output from strace.
I'm not sure but it looks to me as though the random lib has a few problems, I've run the tests on Linux/Itanium and Linux/Xeon using the HP testdrive machines, and there are (different) failures on both. The logfiles are attached, but the segfault has the following backtrace: (gdb) run Starting program: /house/maddock/bin.v2/libs/random/test/random_test.test/intel- linux/debug/random_test Running 1 test case... Basic tests for rand48; seeding uses 1 words Program received signal SIGSEGV, Segmentation fault. 0x083bf73f in __tanq.J () (gdb) bt #0 0x083bf73f in __tanq.J () #1 0x0839399a in std::tan (__x=-0.53682426991417537756471137222469281) at /usr/include/c++/3.4.6/cmath:416 #2 0x082e01bf in boost::cauchy_distribution<long double>::operator()<boost::uni form_01<boost::random::detail::pass_through_engine<boost::rand48>, long double>
(this=0xbfe4c8c8, eng=@0xbfe4c8ac) at ../../../boost/random/cauchy_distribution.hpp:62 #3 0x082e1ad4 in boost::variate_generator<boost::rand48, boost::cauchy_distribu tion<long double> >::operator() (this=0xbfe4c8ac) at ../../../boost/random/variate_generator.hpp:100 #4 0x080a782c in instantiate_dist<boost::rand48, boost::cauchy_distribution<lon g double> > (urng=@0xbfe4d644, name=0x83d04c0 "cauchy_distribution", dist=@0xbfe4cc84) at /house/maddock/libs/random/random_test.cpp:151 #5 0x080a1cb2 in instantiate_real_dist<boost::rand48, long double> ( urng=@0xbfe4d644) at /house/maddock/libs/random/random_test.cpp:209 #6 0x0806aa0b in destr_detour52 () at /house/maddock/libs/random/random_test.cpp:323 #7 0x0804fbef in instantiate_all () at /house/maddock/libs/random/random_test.cpp:337 #8 0x08051527 in test_main () at /house/maddock/libs/random/random_test.cpp:507 #9 0x082819ae in test_main_caller::operator() (this=0x87aa23c) at ../../../boost/test/impl/test_main.ipp:37 #10 0x0838ceec in boost::unit_test::ut_detail::invoker<boost::unit_test::ut_det- --Type <return> to continue, or q <return> to quit--- ail::unused>::invoke<test_main_caller> (this=0xbfe557b0, f=@0x87aa23c) at ../../../boost/test/utils/callback.hpp:56 #11 0x0838d503 in boost::unit_test::ut_detail::callback0_impl_t<boost::unit_test ::ut_detail::unused, test_main_caller>::invoke (this=0x87aa238) at ../../../boost/test/utils/callback.hpp:89 #12 0x0837c0f8 in boost::unit_test::callback0<boost::unit_test::ut_detail::unuse d>::operator() (this=0x87aa060) at ../../../boost/test/utils/callback.hpp:118 #13 0x0839074d in boost::unit_test::(anonymous namespace)::zero_return_wrapper_t <boost::unit_test::callback0<boost::unit_test::ut_detail::unused> ::operator() (this=0x87aa154) at ../../../boost/test/impl/unit_test_monitor.ipp:41 #14 0x0838d2d6 in boost::unit_test::ut_detail::invoker<int>::invoke<boost::unit_ test::(anonymous namespace)::zero_return_wrapper_t<boost::unit_test::callback0<b oost::unit_test::ut_detail::unused> > > (this=0xbfe55820, f=@0x87aa154) at /usr/include/c++/3.4.6/iostream:65536 #15 0x0838d6ea in boost::unit_test::ut_detail::callback0_impl_t<int, boost::unit _test::(anonymous namespace)::zero_return_wrapper_t<boost::unit_test::callback0< boost::unit_test::ut_detail::unused> > >::invoke (this=0x87aa150) at ../../../boost/test/utils/callback.hpp:89 #16 0x0837dba3 in boost::unit_test::callback0<int>::operator() ( this=0xbfe560b4) at ../../../boost/test/utils/callback.hpp:118 #17 0x0805340b in destr_detour6292 () at ../../../boost/test/impl/execution_monitor.ipp:432 #18 0x08051873 in boost::execution_monitor::execute (this=0x85bbf18, F=@0xbfe560b4, catch_system_errors=true, timeout=0) ---Type <return> to continue, or q <return> to quit--- at ../../../boost/test/impl/execution_monitor.ipp:225 #19 0x08055c84 in boost::unit_test::unit_test_monitor_t::execute_and_translate (this=0x85bbf18, tc=@0x87aa038) at ../../../boost/test/impl/unit_test_monitor.ipp:63 #20 0x0837fd1b in boost::unit_test::framework_impl::visit (this=0x85bbc00, tc=@0x87aa038) at ../../../boost/test/impl/framework.ipp:135 #21 0x0806189c in boost::unit_test::traverse_test_tree (tc=@0x87aa038, V=@0x85bbc00) at ../../../boost/test/impl/unit_test_suite.ipp:154 #22 0x080621a0 in boost::unit_test::traverse_test_tree (id=65536, V=@0x85bbc00) at ../../../boost/test/impl/unit_test_suite.ipp:193 #23 0x08061bff in boost::unit_test::traverse_test_tree (suite=@0x87aa1c8, V=@0x85bbc00) at ../../../boost/test/impl/unit_test_suite.ipp:168 #24 0x080621d6 in boost::unit_test::traverse_test_tree (id=1, V=@0x85bbc00) at ../../../boost/test/impl/unit_test_suite.ipp:195 #25 0x0805ec2b in destr_detour6356 () at ../../../boost/test/impl/framework.ipp:396 #26 0x080613f9 in boost::unit_test::unit_test_main (argc=1, argv=0xbfe568e4) at ../../../boost/test/impl/unit_test_main.ipp:61 #27 0x0804e4a6 in main (argc=1, argv=0xbfe568e4) at ../../../boost/test/impl/unit_test_main.ipp:99
I can reproduce this with just #include <cmath> int main() { long double d = std::tan(-0.53682426991417537756471137222469281L); return d; } So I'll file a bug report with Intel. HTH, John.