[v3] 25_algo merge/flatten from libstdcxx_so_7

Benjamin Kosnik bkoz@redhat.com
Wed Oct 3 18:20:00 GMT 2007


> ... one note however: if I add an appropriate std::move_iterator, the 
> current configure test for rvalref will succeed and, in turn, the 
> testcases counting the number of copies saved by moves will fail
> because the actual algorithms and containers have not been
> implemented. Therefore, incrementally, I plan to xfail those
> just-added tests actually counting copies. If people can figure out
> better incremental plans, I'm all ears...

Another (IMHO better) approach would be to remove the
dg-require-rvalrefs on the moveable.cc tests that actually work with
your new functionality (looks like most just require std::move and or
std::move_iterator...) and then adjust the test in
testsuite/lib/libstdc++.exp:

        puts $f "#include <iterator>"
        puts $f "#include <utility>"
        puts $f "using std::move;"
        puts $f "using std::identity;"
        puts $f "using std::forward;"
        puts $f "using std::move_iterator;"
        puts $f "using std::make_move_iterator;"

to reflect something that is not implemented and will fail. Maybe
pointer-to-rvalref member function in some container? Or some trait?

The eventual goal is a complete implementation along with the removal of
dg-require-rvalrefs, both from dejagnu and the testsuite files.

best,
-benjamin



More information about the Libstdc++ mailing list