
On 3/22/07, Douglas Gregor <dgregor@osl.iu.edu> wrote:
Boost Regression test failures Report time: 2007-03-22T00:20:02Z
This report lists all regression test failures on release platforms.
Detailed report: http://engineering.meta-comm.com/boost-regression/CVS-RC_1_34_0/developer/is...
79 failures in 4 libraries iostreams (6) optional (6) parameter (1) python (66)
|iostreams| bzip2_test: msvc-7.1 msvc-8.0 gzip_test: msvc-7.1 msvc-8.0 zlib_test: msvc-7.1 msvc-8.0
|optional| optional_test: msvc-6.5 msvc-6.5 msvc-6.5_stlport4 msvc-7.0 optional_test_ref_fail2: msvc-7.1 msvc-8.0
|parameter| python_test: gcc-cygwin-3.4.4
|python| bases: gcc-4.1.1_sunos_i86pc builtin_converters: gcc-3.4.5_linux gcc-4.0.3_linux gcc-4.1.0_linux gcc-4.1.0_linux_x86_64 crossmod_exception: gcc-3.2.3_linux gcc-3.3.6_linux gcc-3.4.5_linux gcc-3.4.5_linux_x86_64 gcc-4.0.3_linux gcc-4.1.0_linux gcc-4.1.0_linux_x86_64 intel-linux-9.0 crossmod_opaque: gcc-3.2.3_linux gcc-3.3.6_linux gcc-3.4.5_linux gcc-3.4.5_linux_x86_64 gcc-4.0.3_linux gcc-4.1.0_linux gcc-4.1.0_linux_x86_64 intel-linux-9.0 exec: gcc-4.1.1_sunos_i86pc exec-dynamic: gcc-3.4.5_linux gcc-4.0.3_linux gcc-4.1.0_linux gcc-4.1.0_linux_x86_64 gcc-4.1.1_sunos_i86pc import_: cw-9.4 gcc-4.1.0_linux_x86_64 gcc-mingw-3.4.2 gcc-mingw-3.4.5 intel-vc71-win-9.1 msvc-6.5 msvc-6.5 msvc-6.5_stlport4 msvc-7.0 msvc-7.1 msvc-7.1 msvc-7.1 msvc-7.1_stlport4 msvc-8.0 msvc-8.0 msvc-8.0 iterator: gcc-3.2.3_linux gcc-3.3.6_linux gcc-3.4.5_linux gcc-3.4.5_linux_x86_64 gcc-4.0.3_linux gcc-4.1.0_linux gcc-4.1.0_linux_x86_64 intel-linux-9.0 map_indexing_suite: gcc-3.4.5_linux gcc-4.0.3_linux gcc-4.1.0_linux gcc-4.1.0_linux_x86_64 pointee: gcc-4.1.1_sunos_i86pc pointer_type_id_test: gcc-4.1.1_sunos_i86pc try: gcc-3.2.3_linux gcc-3.3.6_linux gcc-3.4.5_linux gcc-3.4.5_linux_x86_64 gcc-4.0.3_linux gcc-4.1.0_linux gcc-4.1.0_linux_x86_64 intel-linux-9.0 upcast: gcc-4.1.1_sunos_i86pc _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
It appears that the signals trackable_test.cpp is failing to report that under GCC 4.1, and later AFAIK, boost::signals::trackable does not work. Something about the test case must be avoiding this failure. If you apply the patch below, which is a bit simpler than the test code already there, the test fails: Index: trackable_test.cpp =================================================================== RCS file: /cvsroot/boost/boost/libs/signals/test/trackable_test.cpp,v retrieving revision 1.9 diff -u -r1.9 trackable_test.cpp --- trackable_test.cpp 30 Sep 2006 13:46:07 -0000 1.9 +++ trackable_test.cpp 23 Mar 2007 20:12:32 -0000 @@ -15,6 +15,11 @@ ~short_lived() {} }; +struct short_lived_2 : public boost::BOOST_SIGNALS_NAMESPACE::trackable { + ~short_lived_2() {} + int f() { return 1; } +}; + struct swallow { template<typename T> int operator()(const T*, int i) { return i; } }; @@ -51,6 +56,18 @@ } BOOST_CHECK(s1(5) == 0); + // Test auto-disconnection, part 2 + int value = 0; + BOOST_CHECK(value == 0); + { + short_lived_2 *shorty_2 = new short_lived_2; + boost::signal0<int> s2; + s2.connect(boost::bind(&short_lived_2::f, shorty_2)); + delete shorty_2; + value = s2(); + } + BOOST_CHECK(value == 0); + // Test auto-disconnection of slot before signal connection { short_lived* shorty = new short_lived(); Note that this is not a regression per se. Trackable seems to have this problem under GCC 4.1 for versions 1.32, 1.33.1, HEAD, and RC_1_34_0. Even so, it would be a shame if the next release did not contain a fix or workaround of some kind. Zach Laine