
I've been running release-mode tests of the release branch using the native AMD64 version of VC++ 8.0, and things have settled down now to the point where I think the failure report is useful. You can see the results in the BoostConsulting column of the release branch regression report (http://tinyurl.com/lawq3), but I've enclosed a list of the failures along with my analysis. I pruned the error messages down to a representative sample for each failure so this should be easy to review. The libraries with failures are: bind concept_check date_time graph iterator numeric program_options python range spirit test thread tr1 typeof Although this platform/compiler is not part of our official release requirements, I hope that the consolidation, pruning, and analysis will make it easier to use than the webpage, to the point that the library maintainers will prefer using what I've enclosed, or at least will be willing to give it a few moments' attention. Thanks, Dave ------- compile-c-c++ concept_check/stl_concept_covering.obj known bogus test. compile-c-c++ graph/csr_graph_test.obj call "C:\Program Files (x86)\Microsoft Visual Studio 8\VC\vcvarsall.bat" amd64 >nul cl /Zm800 -nologo @"Z:\results\boost\bin.v2\libs\graph\test\csr_graph_test.test\msvc-8.0.m\rls\adrs-mdl-64\instr-set-optrn\thrd-mlt\csr_graph_test.obj.rsp" csr_graph_test.cpp ..\libs\graph\test\csr_graph_test.cpp(353) : error C2752: 'boost::property_map<Graph,Property>' : more than one partial specialization matches the template argument list with [ Graph=boost::compressed_sparse_row_graph<boost::directedS,Vertex,Edge>, Property=double Vertex::* ] ..\boost/graph/compressed_sparse_row_graph.hpp(737): could be 'boost::property_map<boost::compressed_sparse_row_graph<Directed,VertexProperty,EdgeProperty,GraphProperty,Vertex,EdgeIndex>,TBundle::* >' ..\boost/graph/properties.hpp(352): or 'boost::property_map<Graph,TBundle::* >' ..\boost/pending/property.hpp(46) : error C2825: 'PropertyTag': must be a class or namespace when followed by '::' ..\boost/graph/properties.hpp(199) : see reference to class template instantiation 'boost::property_kind<PropertyTag>' being compiled with [ PropertyTag=double Vertex::* ] ..\libs\graph\test\csr_graph_test.cpp(353) : see reference to class template instantiation 'boost::property_map<Graph,Property>' being compiled with [ Graph=boost::compressed_sparse_row_graph<boost::directedS,Vertex,Edge>, Property=double Vertex::* ] compile-c-c++ iterator/lvalue_concept_fail.obj The optimizer seems to be defeating the concept check. Newer concept checks in HEAD don't have this problem. compile-c-c++ numeric/det.obj compile-c-c++ numeric/integer.obj compile-c-c++ numeric/mul.obj compile-c-c++ numeric/overflow.obj compile-c-c++ numeric/pi.obj compile-c-c++ numeric/pow.obj compile-c-c++ numeric/test_float.obj All of the above: ..\boost/numeric/interval/hw_rounding.hpp(38) : fatal error C1189: #error : Boost.Numeric.Interval: Please specify rounding control mechanism. compile-c-c++ program_options/test_convert.obj Appears to be a missing #include file, but it also looks like this should be using boost/detail/lightweight_test.hpp ..\libs\program_options\test\test_convert.cpp(22) : error C3861: 'assert': identifier not found ..\libs\program_options\test\test_convert.cpp(77) : error C2143: syntax error : missing ';' before '<' compile-c-c++ tr1/std_test_bind_tricky.obj Looks like a Boost bug. Missing #include? ..\libs\tr1\test\test_bind_tricky.cpp(21) : error C2039: 'is_placeholder' : is not a member of 'std::tr1' ..\libs\tr1\test\test_bind_tricky.cpp(54) : see reference to function template instantiation 'void check_placeholder<boost::arg<I>>(const T &)' being compiled with [ I=1, T=boost::arg<1> ] compile-c-c++ tr1/std_test_function_tricky.obj It's unknown what the problem is here; I suggest using boost/mpl/assert.hpp for a more descriptive message. ..\libs\tr1\test\test_function_tricky.cpp(77) : error C2027: use of undefined type 'boost::STATIC_ASSERTION_FAILURE<x>' with [ x=false ] ..\libs\tr1\test\test_function_tricky.cpp(78) : error C2027: use of undefined type 'boost::STATIC_ASSERTION_FAILURE<x>' with [ x=false ] compile-c-c++ tr1/std_test_mem_fn_tricky.obj This one looks like a Boost bug. ..\libs\tr1\test\test_mem_fn_tricky.cpp(37) : error C2664: 'boost::_mfi::dm<R,T> boost::mem_fn<expected_result(void),test>(R (__cdecl test::* ))' : cannot convert parameter 1 from 'expected_result (__cdecl test::* )(void) volatile' to 'expected_result (__cdecl test::* )(void)' with [ R=expected_result (void), T=test ] Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast ... compile-c-c++ tr1/std_test_ref_wrapper_tricky.obj It's unknown what the problem is here; I suggest using boost/mpl/assert.hpp for a more descriptive message. ..\libs\tr1\test\test_ref_wrapper_tricky.cpp(38) : error C2027: use of undefined type 'boost::STATIC_ASSERTION_FAILURE<x>' with [ x=false ] ..\libs\tr1\test\test_ref_wrapper_tricky.cpp(39) : error C2027: use of undefined type 'boost::STATIC_ASSERTION_FAILURE<x>' with [ x=false ] compile-c-c++ tr1/test_bind_tricky.obj Looks like a Boost bug. Missing #include? ..\libs\tr1\test\test_bind_tricky.cpp(21) : error C2039: 'is_placeholder' : is not a member of 'std::tr1' ..\libs\tr1\test\test_bind_tricky.cpp(54) : see reference to function template instantiation 'void check_placeholder<boost::arg<I>>(const T &)' being compiled with [ I=1, T=boost::arg<1> ] compile-c-c++ tr1/test_function_tricky.obj It's unknown what the problem is here; I suggest using boost/mpl/assert.hpp for a more descriptive message. ..\libs\tr1\test\test_function_tricky.cpp(77) : error C2027: use of undefined type 'boost::STATIC_ASSERTION_FAILURE<x>' with [ x=false ] ..\libs\tr1\test\test_function_tricky.cpp(78) : error C2027: use of undefined type 'boost::STATIC_ASSERTION_FAILURE<x>' with [ x=false ] compile-c-c++ tr1/test_mem_fn_tricky.obj This one looks like a Boost bug. ..\libs\tr1\test\test_mem_fn_tricky.cpp(37) : error C2664: 'boost::_mfi::dm<R,T> boost::mem_fn<expected_result(void),test>(R (__cdecl test::* ))' : cannot convert parameter 1 from 'expected_result (__cdecl test::* )(void) volatile' to 'expected_result (__cdecl test::* )(void)' with [ R=expected_result (void), T=test ] Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast ... compile-c-c++ tr1/test_ref_wrapper_tricky.obj It's unknown what the problem is here; I suggest using boost/mpl/assert.hpp for a more descriptive message. ..\libs\tr1\test\test_ref_wrapper_tricky.cpp(38) : error C2027: use of undefined type 'boost::STATIC_ASSERTION_FAILURE<x>' with [ x=false ] compile-c-c++ typeof/data_member_native.obj compile-c-c++ typeof/function_binding_native.obj compile-c-c++ typeof/function_native.obj compile-c-c++ typeof/function_ptr_from_tpl_native.obj compile-c-c++ typeof/function_ptr_native.obj compile-c-c++ typeof/function_ref_native.obj compile-c-c++ typeof/member_function_native.obj compile-c-c++ typeof/modifiers_native.obj compile-c-c++ typeof/nested_typedef_native.obj compile-c-c++ typeof/noncopyable_native.obj compile-c-c++ typeof/odr1.obj compile-c-c++ typeof/odr2.obj compile-c-c++ typeof/std_native.obj compile-c-c++ typeof/template_dependent_native.obj compile-c-c++ typeof/template_enum_native.obj compile-c-c++ typeof/template_int_native.obj compile-c-c++ typeof/template_multiword_native.obj compile-c-c++ typeof/template_tpl_native.obj compile-c-c++ typeof/template_type_native.obj compile-c-c++ typeof/type_native.obj I think these are all expected failures, and we fix them in 1.35 (CVS HEAD) with a newly-discovered VC8 bugfeature. ..\boost/typeof/typeof.hpp(104) : fatal error C1189: #error : native typeof is not supported testing.capture-output bind/mem_fn_eq_test.run looks like a Boost bug. ..\libs\bind\test\mem_fn_eq_test.cpp(175): test 'boost::mem_fn(&X::mf0_1) != boost::mem_fn(&X::mf0_2)' failed in function 'int __cdecl main(void)' ..\libs\bind\test\mem_fn_eq_test.cpp(178): test 'boost::mem_fn(&X::cmf0_1) != boost::mem_fn(&X::cmf0_2)' failed in function 'int __cdecl main(void)' ... 36 errors detected. testing.capture-output date_time/testmicrosec_time_clock.run looks like a Boost bug. 2007-Feb-25 10:27:54 2007-Feb-25 10:27:54.730125000 Pass :: hours match Pass :: minutes match Pass :: seconds match Pass :: hours date Pass :: last is less 2007-Feb-25 10:27:54 2007-Feb-25 10:27:54.730125000 Pass :: hours match Pass :: minutes match Pass :: seconds match Pass :: hours date FAIL :: last is less ... testing.capture-output python/exec.run This failure is a combination of broken Windows Python support in BBv2 (working on it) and local configuration issues on the test machine. EXIT STATUS: 128 testing.capture-output spirit/symbols_add_null.run testing.capture-output spirit/symbols_add_null_debug.run ..\libs\spirit\test\symbols_add_null.cpp(52): test '0' failed in function 'int __cdecl main(void)' ..\libs\spirit\test\symbols_add_null.cpp(62): test '0' failed in function 'int __cdecl main(void)' testing.capture-output test/prg_exec_fail3.run This one is very suspicious, because there's no ====== BEGIN OUTPUT ====== ... EXIT STATUS: 1 ====== END OUTPUT ====== sequence in the log, and yet bjam marks it as failing. testing.capture-output thread/test_tss_lib.run Not sure what this one means. ====== BEGIN OUTPUT ====== Running 1 test case... tss_instances = 0; tss_total = 5 tss_instances = 5; tss_total = 5 ../libs/thread/test/test_tss.cpp(151): error in "test_tss": Support of automatic tss cleanup for native threading API not available *** 1 failure detected in test suite "Master Test Suite" EXIT STATUS: 201 ====== END OUTPUT ====== -- Dave Abrahams Boost Consulting www.boost-consulting.com