Hi,
noticed last week. Enabling the tests is also useful to have a clearer
picture of which parallel-mode std algorithms need to be fixed vs C++0x.
Tested x86_64-linux check-parallel, committing to mainline.
Paolo.
//////////////////////
2011-04-11 Paolo Carlini <paolo.carl...@oracle.com>
* testsuite/25_algorithms/inplace_merge/moveable.cc: Actually run
it in parallel-mode for check-parallel.
* testsuite/25_algorithms/rotate/moveable.cc: Likewise.
* testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
* testsuite/25_algorithms/remove/moveable.cc: Likewise.
* testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
Likewise.
* testsuite/25_algorithms/unique/moveable.cc: Likewise.
* testsuite/25_algorithms/remove_if/moveable.cc: Likewise.
* testsuite/25_algorithms/heap/moveable.cc: Likewise.
* testsuite/25_algorithms/next_permutation/moveable.cc: Only skip
the tests based on std::lexicographical_compare for check-parallel.
* testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
Index: testsuite/25_algorithms/inplace_merge/moveable.cc
===================================================================
--- testsuite/25_algorithms/inplace_merge/moveable.cc (revision 172263)
+++ testsuite/25_algorithms/inplace_merge/moveable.cc (working copy)
@@ -1,6 +1,6 @@
// { dg-options "-std=gnu++0x" }
-// Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -19,10 +19,6 @@
// 25.3.4 [lib.alg.merge]
-// XXX FIXME: parallel-mode should deal correctly with moveable-only types
-// per C++0x, at minimum smoothly fall back to serial.
-#undef _GLIBCXX_PARALLEL
-
#include <algorithm>
#include <testsuite_hooks.h>
#include <testsuite_iterators.h>
Index: testsuite/25_algorithms/rotate/moveable.cc
===================================================================
--- testsuite/25_algorithms/rotate/moveable.cc (revision 172263)
+++ testsuite/25_algorithms/rotate/moveable.cc (working copy)
@@ -1,6 +1,6 @@
// { dg-options "-std=gnu++0x" }
-// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010
+// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -24,10 +24,6 @@
#undef _GLIBCXX_CONCEPT_CHECKS
-// XXX FIXME: parallel-mode should deal correctly with moveable-only types
-// per C++0x, at minimum smoothly fall back to serial.
-#undef _GLIBCXX_PARALLEL
-
#include <algorithm>
#include <testsuite_hooks.h>
#include <testsuite_iterators.h>
@@ -43,8 +39,6 @@
typedef test_container<rvalstruct, bidirectional_iterator_wrapper> Bcontainer;
typedef test_container<rvalstruct, random_access_iterator_wrapper> Rcontainer;
-
-
void
test1()
{
Index: testsuite/25_algorithms/stable_partition/moveable.cc
===================================================================
--- testsuite/25_algorithms/stable_partition/moveable.cc (revision
172263)
+++ testsuite/25_algorithms/stable_partition/moveable.cc (working copy)
@@ -1,6 +1,6 @@
// { dg-options "-std=gnu++0x" }
-// Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -19,10 +19,6 @@
// 25.2.12 [lib.alg.partitions] Partitions.
-// XXX FIXME: parallel-mode should deal correctly with moveable-only types
-// per C++0x, at minimum smoothly fall back to serial.
-#undef _GLIBCXX_PARALLEL
-
#include <algorithm>
#include <functional>
#include <testsuite_hooks.h>
Index: testsuite/25_algorithms/remove/moveable.cc
===================================================================
--- testsuite/25_algorithms/remove/moveable.cc (revision 172263)
+++ testsuite/25_algorithms/remove/moveable.cc (working copy)
@@ -1,6 +1,6 @@
// { dg-options "-std=gnu++0x" }
-// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010
+// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -22,10 +22,6 @@
#undef _GLIBCXX_CONCEPT_CHECKS
-// XXX FIXME: parallel-mode should deal correctly with moveable-only types
-// per C++0x, at minimum smoothly fall back to serial.
-#undef _GLIBCXX_PARALLEL
-
#include <algorithm>
#include <testsuite_hooks.h>
#include <testsuite_iterators.h>
Index: testsuite/25_algorithms/sort_heap/check_compare_by_value.cc
===================================================================
--- testsuite/25_algorithms/sort_heap/check_compare_by_value.cc (revision
172263)
+++ testsuite/25_algorithms/sort_heap/check_compare_by_value.cc (working copy)
@@ -19,10 +19,6 @@
#undef _GLIBCXX_CONCEPT_CHECKS
-// XXX FIXME: parallel-mode should deal correctly with moveable-only types
-// per C++0x, at minimum smoothly fall back to serial.
-#undef _GLIBCXX_PARALLEL
-
#include <algorithm>
#include <testsuite_hooks.h>
#include <testsuite_iterators.h>
Index: testsuite/25_algorithms/next_permutation/moveable.cc
===================================================================
--- testsuite/25_algorithms/next_permutation/moveable.cc (revision
172263)
+++ testsuite/25_algorithms/next_permutation/moveable.cc (working copy)
@@ -1,6 +1,6 @@
// { dg-options "-std=gnu++0x" }
-// Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -19,10 +19,6 @@
// 25.3.9 [lib.alg.permutation.generators]
-// XXX FIXME: parallel-mode should deal correctly with moveable-only types
-// per C++0x, at minimum smoothly fall back to serial.
-#undef _GLIBCXX_PARALLEL
-
#include <algorithm>
#include <testsuite_hooks.h>
#include <testsuite_iterators.h>
@@ -82,8 +78,13 @@
std::copy(array, array + 6, temp_array);
Container con(temp_array, temp_array + 6);
VERIFY( next_permutation(array, array + 6) );
+
+// XXX FIXME: parallel-mode should deal correctly with moveable-only types
+// per C++0x, at minimum smoothly fall back to serial.
+#ifndef _GLIBCXX_PARALLEL
VERIFY( std::lexicographical_compare(temp_array, temp_array + 6,
array, array + 6) );
+#endif
}
VERIFY( !next_permutation(array,array + 6) );
for(int i = 0; i < 6; ++i)
@@ -106,8 +107,13 @@
std::copy(array, array + 6, temp_array);
Container con(temp_array, temp_array + 6);
VERIFY( next_permutation(array, array + 6, are_ordered) );
+
+// XXX FIXME: parallel-mode should deal correctly with moveable-only types
+// per C++0x, at minimum smoothly fall back to serial.
+#ifndef _GLIBCXX_PARALLEL
VERIFY( std::lexicographical_compare(temp_array, temp_array + 6,
array, array + 6, are_ordered) );
+#endif
}
VERIFY( !next_permutation(array,array + 6, are_ordered) );
for(int i = 0; i < 6; ++i)
Index: testsuite/25_algorithms/prev_permutation/moveable.cc
===================================================================
--- testsuite/25_algorithms/prev_permutation/moveable.cc (revision
172263)
+++ testsuite/25_algorithms/prev_permutation/moveable.cc (working copy)
@@ -1,6 +1,6 @@
// { dg-options "-std=gnu++0x" }
-// Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -19,10 +19,6 @@
// 25.3.9 [lib.alg.permutation.generators]
-// XXX FIXME: parallel-mode should deal correctly with moveable-only types
-// per C++0x, at minimum smoothly fall back to serial.
-#undef _GLIBCXX_PARALLEL
-
#include <algorithm>
#include <testsuite_hooks.h>
#include <testsuite_iterators.h>
@@ -82,8 +78,13 @@
std::copy(array, array + 6, temp_array);
Container con(temp_array, temp_array + 6);
VERIFY( prev_permutation(array, array + 6) );
+
+// XXX FIXME: parallel-mode should deal correctly with moveable-only types
+// per C++0x, at minimum smoothly fall back to serial.
+#ifndef _GLIBCXX_PARALLEL
VERIFY( !std::lexicographical_compare(temp_array, temp_array + 6,
array, array + 6) );
+#endif
}
VERIFY( !prev_permutation(array,array + 6)) ;
for(int i = 0; i < 6; ++i)
@@ -106,8 +107,13 @@
std::copy(array, array + 6, temp_array);
Container con(temp_array, temp_array + 6);
VERIFY( prev_permutation(array, array + 6, are_ordered) );
+
+// XXX FIXME: parallel-mode should deal correctly with moveable-only types
+// per C++0x, at minimum smoothly fall back to serial.
+#ifndef _GLIBCXX_PARALLEL
VERIFY( !std::lexicographical_compare(temp_array, temp_array + 6,
array, array + 6, are_ordered) );
+#endif
}
VERIFY( !prev_permutation(array,array + 6, are_ordered) );
for(int i = 0; i < 6; ++i)
Index: testsuite/25_algorithms/unique/moveable.cc
===================================================================
--- testsuite/25_algorithms/unique/moveable.cc (revision 172263)
+++ testsuite/25_algorithms/unique/moveable.cc (working copy)
@@ -1,6 +1,6 @@
// { dg-options "-std=gnu++0x" }
-// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010
+// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -22,10 +22,6 @@
#undef _GLIBCXX_CONCEPT_CHECKS
-// XXX FIXME: parallel-mode should deal correctly with moveable-only types
-// per C++0x, at minimum smoothly fall back to serial.
-#undef _GLIBCXX_PARALLEL
-
#include <vector>
#include <algorithm>
#include <functional>
Index: testsuite/25_algorithms/remove_if/moveable.cc
===================================================================
--- testsuite/25_algorithms/remove_if/moveable.cc (revision 172263)
+++ testsuite/25_algorithms/remove_if/moveable.cc (working copy)
@@ -1,6 +1,6 @@
// { dg-options "-std=gnu++0x" }
-// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010
+// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -22,10 +22,6 @@
#undef _GLIBCXX_CONCEPT_CHECKS
-// XXX FIXME: parallel-mode should deal correctly with moveable-only types
-// per C++0x, at minimum smoothly fall back to serial.
-#undef _GLIBCXX_PARALLEL
-
#include <algorithm>
#include <testsuite_hooks.h>
#include <testsuite_iterators.h>
Index: testsuite/25_algorithms/heap/moveable.cc
===================================================================
--- testsuite/25_algorithms/heap/moveable.cc (revision 172263)
+++ testsuite/25_algorithms/heap/moveable.cc (working copy)
@@ -1,6 +1,6 @@
// { dg-options "-std=gnu++0x" }
-// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010
+// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -24,10 +24,6 @@
#undef _GLIBCXX_CONCEPT_CHECKS
-// XXX FIXME: parallel-mode should deal correctly with moveable-only types
-// per C++0x, at minimum smoothly fall back to serial.
-#undef _GLIBCXX_PARALLEL
-
#include <algorithm>
#include <testsuite_hooks.h>
#include <testsuite_iterators.h>