Move common header files into a 'support' directory; make 'testit' include -I to that directory; rename 'iterators.h' to 'iterator_test.h'; remove hard-coded paths to include files from more than 350 source files

llvm-svn: 171594
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy.pass.cpp
index 135293d..a20d6ab 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_backward.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_backward.pass.cpp
index 5827171..039fd2f 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_backward.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_backward.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_if.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_if.pass.cpp
index 6e94cd9..ab402a5 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_if.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_if.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct Pred
 {
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_n.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_n.pass.cpp
index cb75591..f594a0b 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_n.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.copy/copy_n.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill.pass.cpp
index 7960800..c72adac 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp
index 309d8a9..b9be7c0 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.generate/generate.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.generate/generate.pass.cpp
index bdf6acc..f166d67 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.generate/generate.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.generate/generate.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct gen_test
 {
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.generate/generate_n.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.generate/generate_n.pass.cpp
index 64c6b00..2494191 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.generate/generate_n.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.generate/generate_n.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct gen_test
 {
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.move/move.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.move/move.pass.cpp
index 4eb6e91..43234be 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.move/move.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.move/move.pass.cpp
@@ -20,7 +20,7 @@
 #include <memory>
 #endif
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp
index 6458437..02b6b16 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp
@@ -20,7 +20,7 @@
 #include <memory>
 #endif
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/is_partitioned.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/is_partitioned.pass.cpp
index 2f7c026..6098a20 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/is_partitioned.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/is_partitioned.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct is_odd
 {
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp
index 81fb407..8eddfbc 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp
@@ -21,7 +21,7 @@
 #include <memory>
 #endif
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct is_odd
 {
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition_copy.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition_copy.pass.cpp
index 8c28bdf..67e1ccc 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition_copy.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition_copy.pass.cpp
@@ -19,7 +19,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct is_odd
 {
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition_point.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition_point.pass.cpp
index 6056576..f5b832c 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition_point.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/partition_point.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct is_odd
 {
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp
index 41bb315..7810dec 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp
@@ -21,7 +21,7 @@
 #include <memory>
 #endif
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct is_odd
 {
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp
index 8ca008f..80f8656 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp
@@ -21,7 +21,7 @@
 #include <memory>
 #endif
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_copy.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_copy.pass.cpp
index 1bb2e63..bf5f79c 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_copy.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_copy.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_copy_if.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_copy_if.pass.cpp
index 7fb1d04..de3f0a7 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_copy_if.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_copy_if.pass.cpp
@@ -19,7 +19,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp
index 7493b87..6da3a67 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp
@@ -22,7 +22,7 @@
 #include <memory>
 #endif
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace.pass.cpp
index 3a4f3bf..f603335 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace.pass.cpp
@@ -19,7 +19,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_copy.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_copy.pass.cpp
index 02bf2aa..3c4d0e5 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_copy.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_copy.pass.cpp
@@ -20,7 +20,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_copy_if.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_copy_if.pass.cpp
index d8c142e..1eff3d3 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_copy_if.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_copy_if.pass.cpp
@@ -21,7 +21,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_if.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_if.pass.cpp
index a22e7fa..8d6ab04 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_if.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.replace/replace_if.pass.cpp
@@ -20,7 +20,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.reverse/reverse.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.reverse/reverse.pass.cpp
index 4656a9d..6c49605 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.reverse/reverse.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.reverse/reverse.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.reverse/reverse_copy.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.reverse/reverse_copy.pass.cpp
index e6ffd4d..70840d1 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.reverse/reverse_copy.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.reverse/reverse_copy.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp
index 949bb5c..b7da735 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp
@@ -19,7 +19,7 @@
 #include <memory>
 #endif
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.rotate/rotate_copy.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.rotate/rotate_copy.pass.cpp
index b8a764d..f2ad535a 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.rotate/rotate_copy.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.rotate/rotate_copy.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp
index 9366564..24fc47e 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp
@@ -20,7 +20,7 @@
 #include <memory>
 #endif
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template<class Iter1, class Iter2>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.transform/binary_transform.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.transform/binary_transform.pass.cpp
index 95455ff..8491ea5 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.transform/binary_transform.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.transform/binary_transform.pass.cpp
@@ -19,7 +19,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template<class InIter1, class InIter2, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.transform/unary_transform.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.transform/unary_transform.pass.cpp
index 9c9c0d2..68556fd 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.transform/unary_transform.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.transform/unary_transform.pass.cpp
@@ -19,7 +19,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp
index ca6eee6..ab4ffad 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp
@@ -21,7 +21,7 @@
 #include <memory>
 #endif
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_copy.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_copy.pass.cpp
index e3a59b8..761dad4 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_copy.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_copy.pass.cpp
@@ -20,7 +20,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_copy_pred.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_copy_pred.pass.cpp
index 2e62ab6..6819899 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_copy_pred.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_copy_pred.pass.cpp
@@ -21,7 +21,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct count_equal
 {
diff --git a/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp b/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp
index 58df57d..c6df235 100644
--- a/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp
+++ b/libcxx/test/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp
@@ -21,7 +21,7 @@
 #include <memory>
 #endif
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct count_equal
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find.pass.cpp
index e1b3298..ee03092 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find_pred.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find_pred.pass.cpp
index d488611..4d172ff 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find_pred.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find_pred.pass.cpp
@@ -18,7 +18,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.all_of/all_of.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.all_of/all_of.pass.cpp
index 7c900a7..c3c3480 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.all_of/all_of.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.all_of/all_of.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct test1
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.any_of/any_of.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.any_of/any_of.pass.cpp
index dd3de59..d096e20 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.any_of/any_of.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.any_of/any_of.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct test1
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.count/count.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.count/count.pass.cpp
index 39ecfb2..260e5ed 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.count/count.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.count/count.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp
index 33118c9..025bc06 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp
@@ -18,7 +18,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp
index d77e1e3..1b1a2ad 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal_pred.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal_pred.pass.cpp
index bb3c947..b21d38b6 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal_pred.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal_pred.pass.cpp
@@ -19,7 +19,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.find.end/find_end.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.find.end/find_end.pass.cpp
index bdf9edc..e95162b4 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.find.end/find_end.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.find.end/find_end.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2>
 void
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.find.end/find_end_pred.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.find.end/find_end_pred.pass.cpp
index 1bd7509..411858d 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.find.end/find_end_pred.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.find.end/find_end_pred.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct count_equal
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of.pass.cpp
index 31816a0..9662076 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of_pred.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of_pred.pass.cpp
index 54957f3..d1d954c 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of_pred.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of_pred.pass.cpp
@@ -19,7 +19,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.find/find.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.find/find.pass.cpp
index a078f06..09f0f41 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.find/find.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.find/find.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
index 321e0c2..bde6ff3 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
@@ -18,7 +18,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp
index 6c70631..661e643 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp
@@ -18,7 +18,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.foreach/test.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.foreach/test.pass.cpp
index a3e3c6c..bf80c2c 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.foreach/test.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.foreach/test.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct for_each_test
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation.pass.cpp
index 6f17853..f68cced 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
index e0125d5..2a3174f 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
@@ -18,7 +18,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.none_of/none_of.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.none_of/none_of.pass.cpp
index 89fbb84..f4ea161 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.none_of/none_of.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.none_of/none_of.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct test1
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.search/search.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.search/search.pass.cpp
index 0a7e5c7..e5c2dd2 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.search/search.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.search/search.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2>
 void
diff --git a/libcxx/test/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
index 193fc57..192da03 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 struct count_equal
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/mismatch/mismatch.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/mismatch/mismatch.pass.cpp
index 0ab71de..9dfebac 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/mismatch/mismatch.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/mismatch/mismatch.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.nonmodifying/mismatch/mismatch_pred.pass.cpp b/libcxx/test/algorithms/alg.nonmodifying/mismatch/mismatch_pred.pass.cpp
index ea842a62..0258479 100644
--- a/libcxx/test/algorithms/alg.nonmodifying/mismatch/mismatch_pred.pass.cpp
+++ b/libcxx/test/algorithms/alg.nonmodifying/mismatch/mismatch_pred.pass.cpp
@@ -19,7 +19,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 int main()
 {
diff --git a/libcxx/test/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search.pass.cpp
index bf1c5dd..253e0e3 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search.pass.cpp
@@ -19,7 +19,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter, class T>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search_comp.pass.cpp
index 2860955..1d28409 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search_comp.pass.cpp
@@ -20,7 +20,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter, class T>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range.pass.cpp
index e15c9c1..ce659c1 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range.pass.cpp
@@ -19,7 +19,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter, class T>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range_comp.pass.cpp
index cd17c4c..2b29e2c 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range_comp.pass.cpp
@@ -20,7 +20,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter, class T>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.binary.search/lower.bound/lower_bound.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.binary.search/lower.bound/lower_bound.pass.cpp
index 804f65d..ce4f7ce 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.binary.search/lower.bound/lower_bound.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.binary.search/lower.bound/lower_bound.pass.cpp
@@ -18,7 +18,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter, class T>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.binary.search/lower.bound/lower_bound_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.binary.search/lower.bound/lower_bound_comp.pass.cpp
index f68c670..ae65c59 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.binary.search/lower.bound/lower_bound_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.binary.search/lower.bound/lower_bound_comp.pass.cpp
@@ -19,7 +19,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter, class T>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.binary.search/upper.bound/upper_bound.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.binary.search/upper.bound/upper_bound.pass.cpp
index 9c4ee64..3659e08 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.binary.search/upper.bound/upper_bound.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.binary.search/upper.bound/upper_bound.pass.cpp
@@ -18,7 +18,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter, class T>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.binary.search/upper.bound/upper_bound_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.binary.search/upper.bound/upper_bound_comp.pass.cpp
index abc7d88..dd5fcfc 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.binary.search/upper.bound/upper_bound_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.binary.search/upper.bound/upper_bound_comp.pass.cpp
@@ -19,7 +19,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter, class T>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare.pass.cpp
index f3b294f..3fa8b2c 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare_comp.pass.cpp
index 1c78a50..f5f1c07 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare_comp.pass.cpp
@@ -20,7 +20,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.merge/inplace_merge.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.merge/inplace_merge.pass.cpp
index f4317eb..01db088 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.merge/inplace_merge.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.merge/inplace_merge.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
index 7bc0809..8da8dfe 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
@@ -30,7 +30,7 @@
 
 #endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.merge/merge.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.merge/merge.pass.cpp
index 0536813..be19710 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.merge/merge.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.merge/merge.pass.cpp
@@ -19,7 +19,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter1, class InIter2, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.merge/merge_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.merge/merge_comp.pass.cpp
index 77c0727..8ef6d54 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.merge/merge_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.merge/merge_comp.pass.cpp
@@ -22,7 +22,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class InIter1, class InIter2, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.min.max/max_element.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.min.max/max_element.pass.cpp
index 4681041..2788b19 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.min.max/max_element.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.min.max/max_element.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.min.max/max_element_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.min.max/max_element_comp.pass.cpp
index d4bde65..c99c693 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.min.max/max_element_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.min.max/max_element_comp.pass.cpp
@@ -18,7 +18,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.min.max/min_element.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.min.max/min_element.pass.cpp
index cba4813..fd41f7a 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.min.max/min_element.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.min.max/min_element.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.min.max/min_element_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.min.max/min_element_comp.pass.cpp
index 6987298..55d7215 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.min.max/min_element_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.min.max/min_element_comp.pass.cpp
@@ -18,7 +18,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.min.max/minmax_element.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.min.max/minmax_element.pass.cpp
index daf1990..6cdb87d 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.min.max/minmax_element.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.min.max/minmax_element.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.min.max/minmax_element_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.min.max/minmax_element_comp.pass.cpp
index 6bd532d..cc0e66e 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.min.max/minmax_element_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.min.max/minmax_element_comp.pass.cpp
@@ -18,7 +18,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/next_permutation.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/next_permutation.pass.cpp
index 422f6e7..fb58c71 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/next_permutation.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/next_permutation.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 #include <cstdio>
 
diff --git a/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/next_permutation_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/next_permutation_comp.pass.cpp
index caea596..8e87e9a 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/next_permutation_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/next_permutation_comp.pass.cpp
@@ -19,7 +19,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 #include <cstdio>
 
diff --git a/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/prev_permutation.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/prev_permutation.pass.cpp
index ddff3ba..d2fa2cb 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/prev_permutation.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/prev_permutation.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 #include <cstdio>
 
diff --git a/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/prev_permutation_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/prev_permutation_comp.pass.cpp
index 220c8d6..51b7aa8 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/prev_permutation_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.permutation.generators/prev_permutation_comp.pass.cpp
@@ -19,7 +19,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../iterators.h"
+#include "test_iterators.h"
 
 #include <cstdio>
 
diff --git a/libcxx/test/algorithms/alg.sorting/alg.set.operations/includes/includes.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.set.operations/includes/includes.pass.cpp
index ab9df3e..8db8177 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.set.operations/includes/includes.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.set.operations/includes/includes.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.set.operations/includes/includes_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.set.operations/includes/includes_comp.pass.cpp
index cc904f6..7e1aef4 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.set.operations/includes/includes_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.set.operations/includes/includes_comp.pass.cpp
@@ -19,7 +19,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.difference/set_difference.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.difference/set_difference.pass.cpp
index 1f7001a..c2c20c2 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.difference/set_difference.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.difference/set_difference.pass.cpp
@@ -21,7 +21,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.difference/set_difference_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.difference/set_difference_comp.pass.cpp
index 6217c45..2b5a6a9 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.difference/set_difference_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.difference/set_difference_comp.pass.cpp
@@ -23,7 +23,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection.pass.cpp
index eea9972..f371890 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection.pass.cpp
@@ -21,7 +21,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection_comp.pass.cpp
index 7f02ffd..035522b 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection_comp.pass.cpp
@@ -23,7 +23,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.symmetric.difference/set_symmetric_difference.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.symmetric.difference/set_symmetric_difference.pass.cpp
index 46a5648..ea3812a 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.symmetric.difference/set_symmetric_difference.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.symmetric.difference/set_symmetric_difference.pass.cpp
@@ -22,7 +22,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.symmetric.difference/set_symmetric_difference_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.symmetric.difference/set_symmetric_difference_comp.pass.cpp
index ae880e4..ba1f61a 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.symmetric.difference/set_symmetric_difference_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.symmetric.difference/set_symmetric_difference_comp.pass.cpp
@@ -24,7 +24,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.union/set_union.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.union/set_union.pass.cpp
index 8b18c50..4657850 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.union/set_union.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.union/set_union.pass.cpp
@@ -21,7 +21,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.union/set_union_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.union/set_union_comp.pass.cpp
index 0051e27..3d63e3f 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.union/set_union_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.set.operations/set.union/set_union_comp.pass.cpp
@@ -23,7 +23,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter1, class Iter2, class OutIter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted.pass.cpp
index af75647..dd6b5c17 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_comp.pass.cpp
index cdeb3cd..d5a34e2 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_comp.pass.cpp
@@ -18,7 +18,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until.pass.cpp
index 8dc1f83..bef01027 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until_comp.pass.cpp
index 2e445cf..68ed29c 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until_comp.pass.cpp
@@ -18,7 +18,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.sort/partial.sort.copy/partial_sort_copy.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.sort/partial.sort.copy/partial_sort_copy.pass.cpp
index 577dd92..5f298fd 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.sort/partial.sort.copy/partial_sort_copy.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.sort/partial.sort.copy/partial_sort_copy.pass.cpp
@@ -20,7 +20,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void
diff --git a/libcxx/test/algorithms/alg.sorting/alg.sort/partial.sort.copy/partial_sort_copy_comp.pass.cpp b/libcxx/test/algorithms/alg.sorting/alg.sort/partial.sort.copy/partial_sort_copy_comp.pass.cpp
index a075d02..df8fb9ea 100644
--- a/libcxx/test/algorithms/alg.sorting/alg.sort/partial.sort.copy/partial_sort_copy_comp.pass.cpp
+++ b/libcxx/test/algorithms/alg.sorting/alg.sort/partial.sort.copy/partial_sort_copy_comp.pass.cpp
@@ -23,7 +23,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../../iterators.h"
+#include "test_iterators.h"
 
 template <class Iter>
 void