Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r57550 - in trunk: libs/unordered/test/unordered status
From: daniel_james_at_[hidden]
Date: 2009-11-10 13:17:55


Author: danieljames
Date: 2009-11-10 13:17:53 EST (Tue, 10 Nov 2009)
New Revision: 57550
URL: http://svn.boost.org/trac/boost/changeset/57550

Log:
Change unordered move tests to be more lenient on compilers without NRVO. Will probably need to reintroduce some of the failure markup later.
Text files modified:
   trunk/libs/unordered/test/unordered/move_tests.cpp | 6 ++++++
   trunk/status/explicit-failures-markup.xml | 26 --------------------------
   2 files changed, 6 insertions(+), 26 deletions(-)

Modified: trunk/libs/unordered/test/unordered/move_tests.cpp
==============================================================================
--- trunk/libs/unordered/test/unordered/move_tests.cpp (original)
+++ trunk/libs/unordered/test/unordered/move_tests.cpp 2009-11-10 13:17:53 EST (Tue, 10 Nov 2009)
@@ -64,7 +64,9 @@
             test::random_values<T> v(1000, generator);
             test::object_count count;
             T y(create(v, count));
+#if defined(BOOST_HAS_NRVO)
             BOOST_TEST(count == test::global_object_count);
+#endif
             test::check_container(y, v);
             test::check_equivalent_keys(y);
         }
@@ -78,7 +80,9 @@
             test::object_count count;
             T y;
             y = create(v, count);
+#if defined(BOOST_HAS_NRVO)
             BOOST_TEST(count == test::global_object_count);
+#endif
             test::check_container(y, v);
             test::check_equivalent_keys(y);
         }
@@ -98,7 +102,9 @@
         {
             test::random_values<T> v(500, generator);
             T y(create(v, count, hf, eq, al, 0.5));
+#if defined(BOOST_HAS_NRVO)
             BOOST_TEST(count == test::global_object_count);
+#endif
             test::check_container(y, v);
             BOOST_TEST(test::equivalent(y.hash_function(), hf));
             BOOST_TEST(test::equivalent(y.key_eq(), eq));

Modified: trunk/status/explicit-failures-markup.xml
==============================================================================
--- trunk/status/explicit-failures-markup.xml (original)
+++ trunk/status/explicit-failures-markup.xml 2009-11-10 13:17:53 EST (Tue, 10 Nov 2009)
@@ -5706,32 +5706,6 @@
     <!-- unordered -->
     <library name="unordered">
       <mark-expected-failures>
- <test name="move_tests"/>
- <toolset name="msvc-6*"/>
- <toolset name="msvc-7*"/>
- <toolset name="msvc-8*"/>
- <toolset name="msvc-9.0"/>
- <toolset name="msvc-9.0express"/>
- <toolset name="msvc-10.0"/>
- <toolset name="intel-win-10.1"/>
- <toolset name="borland-*"/>
- <toolset name="sun-*"/>
- <toolset name="hp_css-*"/>
- <toolset name="intel-linux-8*"/>
- <toolset name="intel-linux-9.0*"/>
- <toolset name="acc-pa_risc"/>
- <note author="Daniel James">
- This tests whether the container is successfully moved under
- different circumstances, and fails if it is copied. Typically if
- this one fails, it just means that return value optimization was
- not applied. It might be possible to change the test to make it for
- the compiler to apply ADL (by not having non-const reference
- parameters for the function which returns the container). So this
- is an acceptable failure.
- </note>
- </mark-expected-failures>
-
- <mark-expected-failures>
         <test name="unnecessary_copy_tests"/>
         <toolset name="borland-*"/>
         <toolset name="sun-*"/>


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk