diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..82d0113
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,14 @@
+*.ii
+*.ii-*
+*.s
+*.s-*
+*.o
+*.o-*
+*.dylib
+*.a
+temp.*
+a.out
+*.pass
+*.fail
+*.log
+*.bz2
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5713cb2..0c616ce 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -136,8 +136,10 @@ endmacro()
 if ("${LIBCXX_CXX_ABI}" STREQUAL "libstdc++" OR
     "${LIBCXX_CXX_ABI}" STREQUAL "libsupc++")
   set(_LIBSUPCXX_INCLUDE_FILES
-    cxxabi.h bits/c++config.h bits/os_defines.h bits/cpu_defines.h
-    bits/cxxabi_tweaks.h bits/cxxabi_forced.h
+    cxxabi.h bits/c++config.h bits/os_defines.h
+# bits/cpu_defines.h
+    bits/cxxabi_tweaks.h
+# bits/cxxabi_forced.h
     )
   if ("${LIBCXX_CXX_ABI}" STREQUAL "libstdc++")
     set(_LIBSUPCXX_DEFINES "-DLIBSTDCXX")
diff --git a/include/__atomic_locked b/include/__atomic_locked
new file mode 100644
index 0000000..f10dd74
--- /dev/null
+++ b/include/__atomic_locked
@@ -0,0 +1,240 @@
+// -*- C++ -*-
+//===--------------------------- __atomic_locked --------------------------===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef _LIBCPP_ATOMIC_LOCKED
+#define _LIBCPP_ATOMIC_LOCKED
+
+#include <__mutex_base>	// for mutex and lock_guard
+
+/**
+	This provides slow-but-usable lock-based atomic access to
+	structures for which atomic lock-free functions are missing.
+	This is motivated by the desire for 64b atomic operations
+	on 32b PowerPC architectures.  
+**/
+
+#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+#pragma GCC system_header
+#endif
+
+_LIBCPP_BEGIN_NAMESPACE_STD
+
+template <class _Tp, bool = is_integral<_Tp>::value && !is_same<_Tp, bool>::value>
+struct __atomic_mutex_locked  // false
+{
+    mutable _Atomic(_Tp) __a_;
+    mutable mutex __lock_;
+    typedef lock_guard<mutex>	lock_type;
+
+    _Tp& na(void) const { return reinterpret_cast<_Tp&>(__a_); }
+    volatile _Tp& na(void) const volatile { return reinterpret_cast<volatile _Tp&>(__a_); }
+
+    _LIBCPP_INLINE_VISIBILITY
+    bool is_lock_free() const volatile _NOEXCEPT
+        {return false;}
+    _LIBCPP_INLINE_VISIBILITY
+    bool is_lock_free() const _NOEXCEPT
+        {return false;}
+    _LIBCPP_INLINE_VISIBILITY
+    void store(_Tp __d, memory_order = memory_order_seq_cst) volatile _NOEXCEPT
+        { const lock_type g(const_cast<mutex&>(__lock_)); na() = __d; }
+    _LIBCPP_INLINE_VISIBILITY
+    void store(_Tp __d, memory_order = memory_order_seq_cst) _NOEXCEPT
+        { const lock_type g(__lock_); na() = __d; }
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp load(memory_order = memory_order_seq_cst) const volatile _NOEXCEPT
+        { const lock_type g(const_cast<mutex&>(__lock_)); return na(); }
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp load(memory_order = memory_order_seq_cst) const _NOEXCEPT
+        { const lock_type g(__lock_); return na(); }
+    _LIBCPP_INLINE_VISIBILITY
+    operator _Tp() const volatile _NOEXCEPT {return load();}
+    _LIBCPP_INLINE_VISIBILITY
+    operator _Tp() const _NOEXCEPT          {return load();}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp exchange(_Tp __d, memory_order = memory_order_seq_cst) volatile _NOEXCEPT
+        { const lock_type g(const_cast<mutex&>(__lock_));
+	// or use std::swap
+          const _Tp ret = na(); na() = __d; return ret; }
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp exchange(_Tp __d, memory_order = memory_order_seq_cst) _NOEXCEPT
+        { const lock_type g(__lock_);
+	// or use std::swap
+          const _Tp ret = na(); na() = __d; return ret; }
+    _LIBCPP_INLINE_VISIBILITY
+    bool compare_exchange_weak(_Tp& __e, _Tp __d,
+                               memory_order __s, memory_order __f) volatile _NOEXCEPT
+        { const lock_type g(const_cast<mutex&>(__lock_));
+	  if (na() == __e) { na() = __d; return true; }
+	  else { __e = na(); return false; }
+	}
+    _LIBCPP_INLINE_VISIBILITY
+    bool compare_exchange_weak(_Tp& __e, _Tp __d,
+                               memory_order __s, memory_order __f) _NOEXCEPT
+        { const lock_type g(__lock_);
+	  if (na() == __e) { na() = __d; return true; }
+	  else { __e = na(); return false; }
+	}
+
+    // for now, _weak inditinguishable from _strong
+    _LIBCPP_INLINE_VISIBILITY
+    bool compare_exchange_strong(_Tp& __e, _Tp __d,
+                                 memory_order __s, memory_order __f) volatile _NOEXCEPT
+        {return compare_exchange_weak(__e, __d, __s, __f);}
+    _LIBCPP_INLINE_VISIBILITY
+    bool compare_exchange_strong(_Tp& __e, _Tp __d,
+                                 memory_order __s, memory_order __f) _NOEXCEPT
+        {return compare_exchange_weak(__e, __d, __s, __f);}
+    _LIBCPP_INLINE_VISIBILITY
+    bool compare_exchange_weak(_Tp& __e, _Tp __d,
+                              memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
+        {return compare_exchange_weak(__e, __d, __m, __m);}
+    _LIBCPP_INLINE_VISIBILITY
+    bool compare_exchange_weak(_Tp& __e, _Tp __d,
+                               memory_order __m = memory_order_seq_cst) _NOEXCEPT
+        {return compare_exchange_weak(__e, __d, __m, __m);}
+    _LIBCPP_INLINE_VISIBILITY
+    bool compare_exchange_strong(_Tp& __e, _Tp __d,
+                              memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
+        {return compare_exchange_strong(__e, __d, __m, __m);}
+    _LIBCPP_INLINE_VISIBILITY
+    bool compare_exchange_strong(_Tp& __e, _Tp __d,
+                                 memory_order __m = memory_order_seq_cst) _NOEXCEPT
+        {return compare_exchange_strong(__e, __d, __m, __m);}
+
+    _LIBCPP_INLINE_VISIBILITY
+#ifndef _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
+    __atomic_mutex_locked() _NOEXCEPT = default;
+#else
+    __atomic_mutex_locked() _NOEXCEPT : __a_() {}
+#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
+
+    _LIBCPP_INLINE_VISIBILITY
+    _LIBCPP_CONSTEXPR __atomic_mutex_locked(_Tp __d) _NOEXCEPT : __a_(__d) {}
+#ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS
+    __atomic_mutex_locked(const __atomic_mutex_locked&) = delete;
+    __atomic_mutex_locked& operator=(const __atomic_mutex_locked&) = delete;
+    __atomic_mutex_locked& operator=(const __atomic_mutex_locked&) volatile = delete;
+#else  // _LIBCPP_HAS_NO_DELETED_FUNCTIONS
+private:
+    __atomic_mutex_locked(const __atomic_mutex_locked&);
+    __atomic_mutex_locked& operator=(const __atomic_mutex_locked&);
+    __atomic_mutex_locked& operator=(const __atomic_mutex_locked&) volatile;
+#endif  // _LIBCPP_HAS_NO_DELETED_FUNCTIONS
+};	// end struct __atomic_mutex_locked
+
+// atomic<Integral>
+
+template <class _Tp>
+struct __atomic_mutex_locked<_Tp, true>
+    : public __atomic_mutex_locked<_Tp, false>
+{
+    typedef __atomic_mutex_locked<_Tp, false> __base;
+    typedef	typename __base::lock_type	lock_type;
+    using __base::__lock_;
+    using __base::na;
+
+    _LIBCPP_INLINE_VISIBILITY
+    __atomic_mutex_locked() _NOEXCEPT _LIBCPP_DEFAULT
+    _LIBCPP_INLINE_VISIBILITY
+    _LIBCPP_CONSTEXPR __atomic_mutex_locked(_Tp __d) _NOEXCEPT : __base(__d) {}
+
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp fetch_add(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
+        { const lock_type g(const_cast<mutex&>(__lock_));
+	  const _Tp ret = na(); na() += __op; return ret;
+	}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp fetch_add(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
+        { const lock_type g(__lock_);
+	  const _Tp ret = na(); na() += __op; return ret;
+	}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp fetch_sub(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
+        { const lock_type g(const_cast<mutex&>(__lock_));
+	  const _Tp ret = na(); na() -= __op; return ret;
+	}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp fetch_sub(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
+        { const lock_type g(__lock_);
+	  const _Tp ret = na(); na() -= __op; return ret;
+	}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp fetch_and(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
+        { const lock_type g(const_cast<mutex&>(__lock_));
+	  const _Tp ret = na(); na() &= __op; return ret;
+	}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp fetch_and(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
+        { const lock_type g(__lock_);
+	  const _Tp ret = na(); na() &= __op; return ret;
+	}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp fetch_or(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
+        { const lock_type g(const_cast<mutex&>(__lock_));
+	  const _Tp ret = na(); na() |= __op; return ret;
+	}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp fetch_or(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
+        { const lock_type g(__lock_);
+	  const _Tp ret = na(); na() |= __op; return ret;
+	}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp fetch_xor(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
+        { const lock_type g(const_cast<mutex&>(__lock_));
+	  const _Tp ret = na(); na() ^= __op; return ret;
+	}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp fetch_xor(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
+        { const lock_type g(__lock_);
+	  const _Tp ret = na(); na() ^= __op; return ret;
+	}
+
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator++(int) volatile _NOEXCEPT      {return fetch_add(_Tp(1));}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator++(int) _NOEXCEPT               {return fetch_add(_Tp(1));}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator--(int) volatile _NOEXCEPT      {return fetch_sub(_Tp(1));}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator--(int) _NOEXCEPT               {return fetch_sub(_Tp(1));}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator++() volatile _NOEXCEPT         {return fetch_add(_Tp(1)) + _Tp(1);}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator++() _NOEXCEPT                  {return fetch_add(_Tp(1)) + _Tp(1);}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator--() volatile _NOEXCEPT         {return fetch_sub(_Tp(1)) - _Tp(1);}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator--() _NOEXCEPT                  {return fetch_sub(_Tp(1)) - _Tp(1);}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator+=(_Tp __op) volatile _NOEXCEPT {return fetch_add(__op) + __op;}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator+=(_Tp __op) _NOEXCEPT          {return fetch_add(__op) + __op;}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator-=(_Tp __op) volatile _NOEXCEPT {return fetch_sub(__op) - __op;}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator-=(_Tp __op) _NOEXCEPT          {return fetch_sub(__op) - __op;}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator&=(_Tp __op) volatile _NOEXCEPT {return fetch_and(__op) & __op;}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator&=(_Tp __op) _NOEXCEPT          {return fetch_and(__op) & __op;}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator|=(_Tp __op) volatile _NOEXCEPT {return fetch_or(__op) | __op;}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator|=(_Tp __op) _NOEXCEPT          {return fetch_or(__op) | __op;}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator^=(_Tp __op) volatile _NOEXCEPT {return fetch_xor(__op) ^ __op;}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator^=(_Tp __op) _NOEXCEPT          {return fetch_xor(__op) ^ __op;}
+};
+
+_LIBCPP_END_NAMESPACE_STD
+
+#endif  // _LIBCPP_ATOMIC_LOCKED
diff --git a/include/atomic b/include/atomic
index f6ab1cb..e580315 100644
--- a/include/atomic
+++ b/include/atomic
@@ -1528,4 +1528,50 @@ typedef atomic<uintmax_t> atomic_uintmax_t;
 
 _LIBCPP_END_NAMESPACE_STD
 
+#if	defined(__ppc__) && !defined(__ppc64__)
+// specialize fallback implementation where 64b atomics are missing
+#include <__atomic_locked>
+
+_LIBCPP_BEGIN_NAMESPACE_STD
+
+template <>
+struct atomic<long long> : public __atomic_mutex_locked<long long>
+{
+    typedef long long		_Tp;
+    typedef __atomic_mutex_locked<_Tp> __base;
+    _LIBCPP_INLINE_VISIBILITY
+    atomic() _NOEXCEPT _LIBCPP_DEFAULT
+    _LIBCPP_INLINE_VISIBILITY
+    _LIBCPP_CONSTEXPR atomic(_Tp __d) _NOEXCEPT : __base(__d) {}
+
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator=(_Tp __d) volatile _NOEXCEPT
+        {__base::store(__d); return __d;}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator=(_Tp __d) _NOEXCEPT
+        {__base::store(__d); return __d;}
+};
+
+template <>
+struct atomic<unsigned long long> :
+	public __atomic_mutex_locked<unsigned long long>
+{
+    typedef unsigned long long		_Tp;
+    typedef __atomic_mutex_locked<_Tp> __base;
+    _LIBCPP_INLINE_VISIBILITY
+    atomic() _NOEXCEPT _LIBCPP_DEFAULT
+    _LIBCPP_INLINE_VISIBILITY
+    _LIBCPP_CONSTEXPR atomic(_Tp __d) _NOEXCEPT : __base(__d) {}
+
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator=(_Tp __d) volatile _NOEXCEPT
+        {__base::store(__d); return __d;}
+    _LIBCPP_INLINE_VISIBILITY
+    _Tp operator=(_Tp __d) _NOEXCEPT
+        {__base::store(__d); return __d;}
+};
+
+_LIBCPP_END_NAMESPACE_STD
+#endif	// defined(__ppc__) && !defined(__ppc64__)
+
 #endif  // _LIBCPP_ATOMIC
diff --git a/include/cmath b/include/cmath
index 75087ae..1257c8b 100644
--- a/include/cmath
+++ b/include/cmath
@@ -298,7 +298,27 @@ long double    truncl(long double x);
 */
 
 #include <__config>
+
+// The C++11 standard requires C99, but whether or not __STDC_VERSION__
+// is accordingly set is implementation-defined.
+// on darwin10: C99 is explicltly required to enable long long returning 
+// functions, like llrint and llround.
+// Alternatively, undefine __STRICT_ANSI__ for those symbols.
+// This is just a convenient, isolated workaround.
+// #if defined(__APPLE__) && (__cplusplus >= 201101L) && !defined(__STDC_VERSION__)
+#if defined(__APPLE__) && (__cplusplus >= 201101L) && !defined(__STDC_VERSION__) && defined(__STRICT_ANSI__)
+#define	__IMPLICIT_STDC_VERSION_C99__
+// #define	__STDC_VERSION__	199901L
+#undef	__STRICT_ANSI__
+#endif
 #include <math.h>
+#ifdef	__IMPLICIT_STDC_VERSION_C99__
+// undo the abvoe
+// #undef	__STDC_VERSION__
+#define	__STRICT_ANSI__
+// __IMPLICIT_STDC_VERSION_C99__ remains defined as evidence of what happened
+#endif
+
 #include <type_traits>
 
 #ifdef _LIBCPP_MSVCRT
diff --git a/include/iterator b/include/iterator
index 70a664d..cd3fe4c 100644
--- a/include/iterator
+++ b/include/iterator
@@ -332,7 +332,7 @@ template <class C> auto crend(const C& c) -> decltype(std::rend(c));          //
 #include <iosfwd>
 #include <initializer_list>
 #ifdef __APPLE__
-#include <Availability.h>
+#include <AvailabilityMacros.h>
 #endif
 
 #ifdef _LIBCPP_DEBUG
@@ -901,8 +901,8 @@ public:
     _LIBCPP_INLINE_VISIBILITY bool failed() const _NOEXCEPT {return __sbuf_ == 0;}
 
 #if !defined(__APPLE__) || \
-    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED > __MAC_10_8) || \
-    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED > __IPHONE_6_0)
+    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && defined(__MAC_10_8) && __MAC_OS_X_VERSION_MIN_REQUIRED > __MAC_10_8) || \
+    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && defined(__IPHONE_6_0) && __IPHONE_OS_VERSION_MIN_REQUIRED > __IPHONE_6_0)
 
     template <class _Ch, class _Tr>
     friend
diff --git a/include/locale b/include/locale
index ac3ae7e..2f6a16a 100644
--- a/include/locale
+++ b/include/locale
@@ -198,7 +198,7 @@ template <class charT> class messages_byname;
 #endif  // !_LIBCPP_MSVCRT
 
 #ifdef __APPLE__
-#include <Availability.h>
+#include <AvailabilityMacros.h>
 #endif
 
 #include <__undef_min_max>
@@ -1467,8 +1467,8 @@ __pad_and_output(_OutputIterator __s,
 }
 
 #if !defined(__APPLE__) || \
-    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED > __MAC_10_8) || \
-    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED > __IPHONE_6_0)
+    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && defined(__MAC_10_8) && __MAC_OS_X_VERSION_MIN_REQUIRED > __MAC_10_8) || \
+    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && defined(__IPHONE_6_0) && __IPHONE_OS_VERSION_MIN_REQUIRED > __IPHONE_6_0)
 
 template <class _CharT, class _Traits>
 _LIBCPP_HIDDEN
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index cec0bee..0893001 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -50,14 +50,27 @@ append_if(compile_flags LIBCXX_HAS_FPIC_FLAG -fPIC)
 append_if(link_flags LIBCXX_HAS_NODEFAULTLIBS_FLAG -nodefaultlibs)
 
 if ( APPLE )
-  if ( CMAKE_OSX_DEPLOYMENT_TARGET STREQUAL "10.6" )
+  if ( CMAKE_OSX_DEPLOYMENT_TARGET VERSION_LESS "10.6" )
+    # libc++ must be built with clang++
+    execute_process(COMMAND ${CMAKE_CXX_COMPILER} -print-search-dirs
+      COMMAND grep "libraries:"
+      COMMAND cut -d= -f2
+      OUTPUT_VARIABLE CXX_LIBDIR
+      OUTPUT_STRIP_TRAILING_WHITESPACE
+    )
+    list(APPEND link_flags
+      "-compatibility_version 1"
+      "-Wl,-unexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++unexp.exp"
+      "-lgcc_s.${CMAKE_OSX_DEPLOYMENT_TARGET}"
+      "${CXX_LIBDIR}/lib/darwin/libclang_rt.${CMAKE_OSX_ARCHITECTURES}.a"
+      "/usr/lib/libSystem.B.dylib"
+      "-lSystemStubs" )
+  elseif ( CMAKE_OSX_DEPLOYMENT_TARGET STREQUAL "10.6" )
     list(APPEND compile_flags "-U__STRICT_ANSI__")
     list(APPEND link_flags
       "-compatibility_version 1"
-      "-current_version ${LIBCXX_VERSION}"
-      "-install_name /usr/lib/libc++.1.dylib"
-      "-Wl,-reexport_library,/usr/lib/libc++abi.dylib"
       "-Wl,-unexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++unexp.exp"
+      "-lgcc_s.1"
       "/usr/lib/libSystem.B.dylib")
   else()
     if ( ${CMAKE_OSX_SYSROOT} )
@@ -71,6 +84,7 @@ if ( APPLE )
           "-Wl,-reexport_library,${CMAKE_OSX_SYSROOT}/usr/lib/libc++abi.dylib")
       endif()
     else()
+      # FIXME: hard-coded libc++abi.dylib location doesn't work for me
       set (OSX_RE_EXPORT_LINE "/usr/lib/libc++abi.dylib -Wl,-reexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++abi${LIBCXX_LIBCPPABI_VERSION}.exp")
     endif()
 
@@ -85,6 +99,7 @@ if ( APPLE )
 endif()
 
 string(REPLACE ";" " " link_flags "${link_flags}")
+string(REPLACE ";" " " compile_flags "${compile_flags}")
 
 set_target_properties(cxx
   PROPERTIES
diff --git a/src/exception.cpp b/src/exception.cpp
index 3ce6f2e..6c090e5 100644
--- a/src/exception.cpp
+++ b/src/exception.cpp
@@ -16,7 +16,8 @@
 #define __has_include(inc) 0
 #endif
 
-#ifdef __APPLE__
+// darwin8: there is no __cxxabiapple namespace anywhere
+#if defined(__APPLE__) && !defined(DARWIN_LIBSUPCXX)
   #include <cxxabi.h>
 
   using namespace __cxxabiv1;
@@ -31,6 +32,12 @@
   #endif  // _LIBCPPABI_VERSION
 #elif defined(LIBCXXRT) || __has_include(<cxxabi.h>)
   #include <cxxabi.h>
+  #if defined(DARWIN_LIBSUPCXX)
+  namespace __cxxabiv1 {
+    extern std::terminate_handler  __terminate_handler;
+    extern std::unexpected_handler __unexpected_handler;
+  }
+  #endif
   using namespace __cxxabiv1;
   #if defined(LIBCXXRT) || defined(_LIBCPPABI_VERSION)
     #define HAVE_DEPENDENT_EH_ABI 1
@@ -40,10 +47,18 @@
   static std::unexpected_handler __unexpected_handler;
 #endif // __has_include(<cxxabi.h>)
 
+#if defined(__APPLE__) && defined(DARWIN_LIBSUPCXX)
+// should clang provide -DPIC
+#define	PIC	1
+#include <bits/os_defines.h>
+// see https://www.opensource.apple.com/source/libstdcxx/libstdcxx-39/libstdcxx/libstdc++-v3/libsupc++/eh_terminate.cc
+#endif
+
 namespace std
 {
 
-#if !defined(LIBCXXRT) && !defined(_LIBCPPABI_VERSION) && !defined(__GLIBCXX__)
+#define	__PRED__	!defined(LIBCXXRT) && !defined(_LIBCPPABI_VERSION) && !defined(__GLIBCXX__)
+#if __PRED__
 
 // libcxxrt provides implementations of these functions itself.
 unexpected_handler
@@ -51,13 +66,22 @@ set_unexpected(unexpected_handler func) _NOEXCEPT
 {
     return __sync_lock_test_and_set(&__unexpected_handler, func);
 }
-
+#endif
+#if __PRED__ || defined(DARWIN_LIBSUPCXX)
 unexpected_handler
 get_unexpected() _NOEXCEPT
 {
+#if defined(__APPLE__) && defined(__ppc__) && defined(PIC)
+    const std::unexpected_handler
+	old(reinterpret_cast<std::unexpected_handler>(
+		_keymgr_get_per_thread_data(KEYMGR_UNEXPECTED_HANDLER_KEY)));
+    return old ? old : __unexpected_handler;
+#else
     return __sync_fetch_and_add(&__unexpected_handler, (unexpected_handler)0);
+#endif /* __APPLE__ etc. */
 }
-
+#endif
+#if __PRED__
 _LIBCPP_NORETURN
 void
 unexpected()
@@ -73,12 +97,23 @@ set_terminate(terminate_handler func) _NOEXCEPT
     return __sync_lock_test_and_set(&__terminate_handler, func);
 }
 
+#endif
+#if __PRED__ || defined(DARWIN_LIBSUPCXX)
 terminate_handler
 get_terminate() _NOEXCEPT
 {
+// FIXME: see https://www.opensource.apple.com/source/libstdcxx/libstdcxx-39/libstdcxx/libstdc++-v3/libsupc++/eh_terminate.cc
+#if defined(__APPLE__) && defined(__ppc__) && defined(PIC)
+    const std::terminate_handler
+	old(reinterpret_cast<std::terminate_handler>(
+		_keymgr_get_per_thread_data(KEYMGR_TERMINATE_HANDLER_KEY)));
+    return old ? old : __terminate_handler;
+#else
     return __sync_fetch_and_add(&__terminate_handler, (terminate_handler)0);
+#endif
 }
-
+#endif
+#if __PRED__
 #ifndef __EMSCRIPTEN__ // We provide this in JS
 _LIBCPP_NORETURN
 void
@@ -104,8 +139,10 @@ terminate() _NOEXCEPT
 }
 #endif // !__EMSCRIPTEN__
 #endif // !defined(LIBCXXRT) && !defined(_LIBCPPABI_VERSION)
+#undef	__PRED__
 
 #if !defined(LIBCXXRT) && !defined(__GLIBCXX__) && !defined(__EMSCRIPTEN__)
+#if !defined(DARWIN_LIBSUPCXX)
 bool uncaught_exception() _NOEXCEPT
 {
 #if defined(__APPLE__) || defined(_LIBCPPABI_VERSION)
@@ -121,6 +158,7 @@ bool uncaught_exception() _NOEXCEPT
     ::abort();
 #endif  // __APPLE__
 }
+#endif
 
 
 #ifndef _LIBCPPABI_VERSION
@@ -141,7 +179,8 @@ const char* exception::what() const _NOEXCEPT
 bad_exception::~bad_exception() _NOEXCEPT
 {
 }
-
+#endif
+#if !defined(_LIBCPPABI_VERSION) && !defined(__GLIBCXX__) || (defined(DARWIN_LIBSUPCXX) && DARWIN_LIBSUPCXX < 10)
 const char* bad_exception::what() const _NOEXCEPT
 {
   return "std::bad_exception";
@@ -149,7 +188,9 @@ const char* bad_exception::what() const _NOEXCEPT
 
 #endif
 
-#if defined(__GLIBCXX__)
+#define	GLIBCXX_HAS___EXCEPTION_PTR		!defined(DARWIN_LIBSUPCXX)
+
+#if defined(__GLIBCXX__) && GLIBCXX_HAS___EXCEPTION_PTR
 
 // libsupc++ does not implement the dependent EH ABI and the functionality
 // it uses to implement std::exception_ptr (which it declares as an alias of
@@ -182,7 +223,7 @@ exception_ptr::~exception_ptr() _NOEXCEPT
 {
 #if HAVE_DEPENDENT_EH_ABI
     __cxa_decrement_exception_refcount(__ptr_);
-#elif defined(__GLIBCXX__)
+#elif defined(__GLIBCXX__) && GLIBCXX_HAS___EXCEPTION_PTR
     reinterpret_cast<__exception_ptr::exception_ptr*>(this)->~exception_ptr();
 #else
 #   if defined(_MSC_VER) && ! defined(__clang__)
@@ -200,7 +241,7 @@ exception_ptr::exception_ptr(const exception_ptr& other) _NOEXCEPT
 {
 #if HAVE_DEPENDENT_EH_ABI
     __cxa_increment_exception_refcount(__ptr_);
-#elif defined(__GLIBCXX__)
+#elif defined(__GLIBCXX__) && GLIBCXX_HAS___EXCEPTION_PTR
     new (reinterpret_cast<void*>(this)) __exception_ptr::exception_ptr(
         reinterpret_cast<const __exception_ptr::exception_ptr&>(other));
 #else
@@ -224,7 +265,7 @@ exception_ptr& exception_ptr::operator=(const exception_ptr& other) _NOEXCEPT
         __ptr_ = other.__ptr_;
     }
     return *this;
-#elif defined(__GLIBCXX__)
+#elif defined(__GLIBCXX__) && GLIBCXX_HAS___EXCEPTION_PTR
     *reinterpret_cast<__exception_ptr::exception_ptr*>(this) =
         reinterpret_cast<const __exception_ptr::exception_ptr&>(other);
     return *this;
@@ -244,7 +285,7 @@ nested_exception::nested_exception() _NOEXCEPT
 {
 }
 
-#if !defined(__GLIBCXX__)
+#if !defined(__GLIBCXX__) || defined(DARWIN_LIBSUPCXX)
 
 nested_exception::~nested_exception() _NOEXCEPT
 {
@@ -261,7 +302,7 @@ nested_exception::rethrow_nested() const
     rethrow_exception(__ptr_);
 }
 
-#if !defined(__GLIBCXX__)
+#if !defined(__GLIBCXX__) || defined(DARWIN_LIBSUPCXX)
 
 exception_ptr current_exception() _NOEXCEPT
 {
@@ -292,7 +333,7 @@ void rethrow_exception(exception_ptr p)
     __cxa_rethrow_primary_exception(p.__ptr_);
     // if p.__ptr_ is NULL, above returns so we terminate
     terminate();
-#elif defined(__GLIBCXX__)
+#elif defined(__GLIBCXX__) && GLIBCXX_HAS___EXCEPTION_PTR
     rethrow_exception(reinterpret_cast<__exception_ptr::exception_ptr&>(p));
 #else
 #   if defined(_MSC_VER) && ! defined(__clang__)
diff --git a/src/new.cpp b/src/new.cpp
index f4998cf..c3cfe14 100644
--- a/src/new.cpp
+++ b/src/new.cpp
@@ -17,7 +17,7 @@
 #define __has_include(inc) 0
 #endif
 
-#ifdef __APPLE__
+#if defined(__APPLE__) && !defined(DARWIN_LIBSUPCXX)
     #include <cxxabi.h>
 
     #ifndef _LIBCPPABI_VERSION
@@ -30,11 +30,21 @@
     #if defined(LIBCXXRT) || __has_include(<cxxabi.h>)
         #include <cxxabi.h>
     #endif  // __has_include(<cxxabi.h>)
+    #if defined(DARWIN_LIBSUPCXX)
+        extern std::new_handler	__new_handler;
+    #endif
     #if !defined(_LIBCPPABI_VERSION) && !defined(__GLIBCXX__)
         static std::new_handler __new_handler;
     #endif  // _LIBCPPABI_VERSION
 #endif
 
+#if defined(__APPLE__) && defined(DARWIN_LIBSUPCXX)
+// should clang provide -DPIC
+#define	PIC	1
+#include <bits/os_defines.h>
+// see https://www.opensource.apple.com/source/libstdcxx/libstdcxx-39/libstdcxx/libstdc++-v3/libsupc++/new_handler.cc
+#endif
+
 #ifndef __GLIBCXX__
 
 // Implement all new and delete operators as weak definitions
@@ -150,9 +160,11 @@ operator delete[] (void* ptr, const std::nothrow_t&) _NOEXCEPT
 namespace std
 {
 
+#if	!defined(DARWIN_LIBSUPCXX)
 #ifndef __GLIBCXX__
 const nothrow_t nothrow = {};
 #endif
+#endif
 
 #ifndef _LIBCPPABI_VERSION
 
@@ -163,11 +175,20 @@ set_new_handler(new_handler handler) _NOEXCEPT
 {
     return __sync_lock_test_and_set(&__new_handler, handler);
 }
-
+#endif
+#if !defined(__GLIBCXX__) || defined(DARWIN_LIBSUPCXX)
 new_handler
 get_new_handler() _NOEXCEPT
 {
+/* APPLE LOCAL begin keymgr */
+#if defined(__APPLE__) && defined(__ppc__) && defined(PIC)
+    const new_handler prev_handler(reinterpret_cast<new_handler>(
+	_keymgr_get_per_thread_data(KEYMGR_NEW_HANDLER_KEY)));
+    return prev_handler ? prev_handler : __new_handler;
+#else	/* __APPLE__ etc. */
     return __sync_fetch_and_add(&__new_handler, (new_handler)0);
+#endif	/* __APPLE__ etc. */
+/* APPLE LOCAL end keymgr */
 }
 
 #endif // !__GLIBCXX__
@@ -183,7 +204,9 @@ bad_alloc::bad_alloc() _NOEXCEPT
 bad_alloc::~bad_alloc() _NOEXCEPT
 {
 }
+#endif // !__GLIBCXX__
 
+#if !defined(__GLIBCXX__) || (defined(DARWIN_LIBSUPCXX) && DARWIN_LIBSUPCXX < 10)
 const char*
 bad_alloc::what() const _NOEXCEPT
 {
diff --git a/src/typeinfo.cpp b/src/typeinfo.cpp
index b428120..4153372 100644
--- a/src/typeinfo.cpp
+++ b/src/typeinfo.cpp
@@ -35,23 +35,29 @@ std::bad_typeid::bad_typeid() _NOEXCEPT
 std::bad_cast::~bad_cast() _NOEXCEPT
 {
 }
+#endif
 
+#if !defined(__GLIBCXX__) || (defined(DARWIN_LIBSUPCXX) && DARWIN_LIBSUPCXX < 10)
 const char*
 std::bad_cast::what() const _NOEXCEPT
 {
   return "std::bad_cast";
 }
+#endif
 
+#ifndef __GLIBCXX__
 std::bad_typeid::~bad_typeid() _NOEXCEPT
 {
 }
-
+#endif
+#if !defined(__GLIBCXX__) || (defined(DARWIN_LIBSUPCXX) && DARWIN_LIBSUPCXX < 10)
 const char*
 std::bad_typeid::what() const _NOEXCEPT
 {
   return "std::bad_typeid";
 }
-
+#endif
+#ifndef __GLIBCXX__
 #ifdef __APPLE__
   // On Darwin, the cxa_bad_* functions cannot be in the lower level library
   // because bad_cast and bad_typeid are defined in his higher level library
diff --git a/test/atomics/atomics.types.generic/integral.pass.cpp b/test/atomics/atomics.types.generic/integral.pass.cpp
index 26caa50..8c15231 100644
--- a/test/atomics/atomics.types.generic/integral.pass.cpp
+++ b/test/atomics/atomics.types.generic/integral.pass.cpp
@@ -88,6 +88,8 @@
 #include <new>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class A, class T>
 void
 do_test()
@@ -160,7 +162,6 @@ void test()
     do_test<volatile A, T>();
 }
 
-
 int main()
 {
     test<std::atomic_char, char>();
@@ -172,8 +173,10 @@ int main()
     test<std::atomic_uint, unsigned int>();
     test<std::atomic_long, long>();
     test<std::atomic_ulong, unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<std::atomic_llong, long long>();
     test<std::atomic_ullong, unsigned long long>();
+#endif
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<std::atomic_char16_t, char16_t>();
     test<std::atomic_char32_t, char32_t>();
@@ -189,8 +192,10 @@ int main()
     test<volatile std::atomic_uint, unsigned int>();
     test<volatile std::atomic_long, long>();
     test<volatile std::atomic_ulong, unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<volatile std::atomic_llong, long long>();
     test<volatile std::atomic_ullong, unsigned long long>();
+#endif
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<volatile std::atomic_char16_t, char16_t>();
     test<volatile std::atomic_char32_t, char32_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong.pass.cpp
index fd5102b..6a30715 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -73,8 +75,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong_explicit.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong_explicit.pass.cpp
index f2610a3..d11719a 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong_explicit.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong_explicit.pass.cpp
@@ -24,6 +24,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -80,8 +82,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak.pass.cpp
index a3f95a4..60baf8a 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak.pass.cpp
@@ -20,6 +20,7 @@
 #include <atomic>
 #include <type_traits>
 #include <cassert>
+#include "powerpc-darwin.h"
 
 template <class T>
 void
@@ -73,8 +74,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak_explicit.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak_explicit.pass.cpp
index 2f3e996..91dcdb7 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak_explicit.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak_explicit.pass.cpp
@@ -24,6 +24,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -80,8 +82,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange.pass.cpp
index 4264943..6de81b5 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -58,8 +60,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange_explicit.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange_explicit.pass.cpp
index 0f3add5..4c65a68 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange_explicit.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange_explicit.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -60,8 +62,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add.pass.cpp
index 9ce60ad..703451b 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add.pass.cpp
@@ -29,6 +29,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -96,8 +98,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add_explicit.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add_explicit.pass.cpp
index a2a1a44..3822ce8 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add_explicit.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add_explicit.pass.cpp
@@ -29,6 +29,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -100,8 +102,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and.pass.cpp
index 01d2cc6..37f76c0 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -52,8 +54,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and_explicit.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and_explicit.pass.cpp
index abfb83d..1a9c1ba 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and_explicit.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and_explicit.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -54,8 +56,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or.pass.cpp
index 43b6c4f..09fa660 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -52,8 +54,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or_explicit.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or_explicit.pass.cpp
index 21078bb..23d5d2d 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or_explicit.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or_explicit.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -54,8 +56,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub.pass.cpp
index d33b81e..5b8124d 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub.pass.cpp
@@ -29,6 +29,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -96,8 +98,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub_explicit.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub_explicit.pass.cpp
index 886a65f..615facc 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub_explicit.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub_explicit.pass.cpp
@@ -30,6 +30,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -101,8 +103,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor.pass.cpp
index 78120a7..c6668d2 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -52,8 +54,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor_explicit.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor_explicit.pass.cpp
index 0a0cd15..a4b23ec 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor_explicit.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor_explicit.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -54,8 +56,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_init.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_init.pass.cpp
index f0d9a24..059a207 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_init.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_init.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -56,8 +58,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_load.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_load.pass.cpp
index b239886..c8043a9 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_load.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_load.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -56,8 +58,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_load_explicit.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_load_explicit.pass.cpp
index 3072dd5..d19afbd 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_load_explicit.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_load_explicit.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -56,8 +58,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_store.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_store.pass.cpp
index f9044bf..7a001d5 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_store.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_store.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -56,8 +58,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_store_explicit.pass.cpp b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_store_explicit.pass.cpp
index 18038ae..de03f64 100644
--- a/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_store_explicit.pass.cpp
+++ b/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_store_explicit.pass.cpp
@@ -21,6 +21,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "powerpc-darwin.h"
+
 template <class T>
 void
 test()
@@ -56,8 +58,10 @@ int main()
     test<unsigned int>();
     test<long>();
     test<unsigned long>();
+#ifndef	MISSING_64B_ATOMIC_OPS
     test<long long>();
     test<unsigned long long>();
+#endif
     test<wchar_t>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
     test<char16_t>();
diff --git a/test/containers/associative/map/map.access/at.pass.cpp b/test/containers/associative/map/map.access/at.pass.cpp
index 6c001a3..86b1e3d 100644
--- a/test/containers/associative/map/map.access/at.pass.cpp
+++ b/test/containers/associative/map/map.access/at.pass.cpp
@@ -17,7 +17,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.access/empty.pass.cpp b/test/containers/associative/map/map.access/empty.pass.cpp
index 2e542ac..b11e94c 100644
--- a/test/containers/associative/map/map.access/empty.pass.cpp
+++ b/test/containers/associative/map/map.access/empty.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.access/index_key.pass.cpp b/test/containers/associative/map/map.access/index_key.pass.cpp
index 5dfdf40..ab1144c 100644
--- a/test/containers/associative/map/map.access/index_key.pass.cpp
+++ b/test/containers/associative/map/map.access/index_key.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/map/map.access/index_rv_key.pass.cpp b/test/containers/associative/map/map.access/index_rv_key.pass.cpp
index 4c15f08..a58d50d 100644
--- a/test/containers/associative/map/map.access/index_rv_key.pass.cpp
+++ b/test/containers/associative/map/map.access/index_rv_key.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.access/iterator.pass.cpp b/test/containers/associative/map/map.access/iterator.pass.cpp
index 64a6284..7aa713c 100644
--- a/test/containers/associative/map/map.access/iterator.pass.cpp
+++ b/test/containers/associative/map/map.access/iterator.pass.cpp
@@ -29,7 +29,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.access/max_size.pass.cpp b/test/containers/associative/map/map.access/max_size.pass.cpp
index 6f86d0e..551120d 100644
--- a/test/containers/associative/map/map.access/max_size.pass.cpp
+++ b/test/containers/associative/map/map.access/max_size.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.access/size.pass.cpp b/test/containers/associative/map/map.access/size.pass.cpp
index ab4b05b..07c1232 100644
--- a/test/containers/associative/map/map.access/size.pass.cpp
+++ b/test/containers/associative/map/map.access/size.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/alloc.pass.cpp b/test/containers/associative/map/map.cons/alloc.pass.cpp
index 95d71da..9214673 100644
--- a/test/containers/associative/map/map.cons/alloc.pass.cpp
+++ b/test/containers/associative/map/map.cons/alloc.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/assign_initializer_list.pass.cpp b/test/containers/associative/map/map.cons/assign_initializer_list.pass.cpp
index a583f0d..482d1ac 100644
--- a/test/containers/associative/map/map.cons/assign_initializer_list.pass.cpp
+++ b/test/containers/associative/map/map.cons/assign_initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/compare.pass.cpp b/test/containers/associative/map/map.cons/compare.pass.cpp
index 2c4bb1a..5a213c8 100644
--- a/test/containers/associative/map/map.cons/compare.pass.cpp
+++ b/test/containers/associative/map/map.cons/compare.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../../../test_compare.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/compare_alloc.pass.cpp b/test/containers/associative/map/map.cons/compare_alloc.pass.cpp
index 670acff..dcb0856 100644
--- a/test/containers/associative/map/map.cons/compare_alloc.pass.cpp
+++ b/test/containers/associative/map/map.cons/compare_alloc.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/copy.pass.cpp b/test/containers/associative/map/map.cons/copy.pass.cpp
index ce20d69..15d1a4e 100644
--- a/test/containers/associative/map/map.cons/copy.pass.cpp
+++ b/test/containers/associative/map/map.cons/copy.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/copy_alloc.pass.cpp b/test/containers/associative/map/map.cons/copy_alloc.pass.cpp
index 8492404..1512e2d 100644
--- a/test/containers/associative/map/map.cons/copy_alloc.pass.cpp
+++ b/test/containers/associative/map/map.cons/copy_alloc.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/copy_assign.pass.cpp b/test/containers/associative/map/map.cons/copy_assign.pass.cpp
index fefb35c..8bd45a3 100644
--- a/test/containers/associative/map/map.cons/copy_assign.pass.cpp
+++ b/test/containers/associative/map/map.cons/copy_assign.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/default.pass.cpp b/test/containers/associative/map/map.cons/default.pass.cpp
index 49fc223..2c6908e 100644
--- a/test/containers/associative/map/map.cons/default.pass.cpp
+++ b/test/containers/associative/map/map.cons/default.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/initializer_list.pass.cpp b/test/containers/associative/map/map.cons/initializer_list.pass.cpp
index 63820be..1969436 100644
--- a/test/containers/associative/map/map.cons/initializer_list.pass.cpp
+++ b/test/containers/associative/map/map.cons/initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/initializer_list_compare.pass.cpp b/test/containers/associative/map/map.cons/initializer_list_compare.pass.cpp
index 0c3bd23..08f8a52 100644
--- a/test/containers/associative/map/map.cons/initializer_list_compare.pass.cpp
+++ b/test/containers/associative/map/map.cons/initializer_list_compare.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 #include "../../../test_compare.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp b/test/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp
index d844624..93930fc 100644
--- a/test/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp
+++ b/test/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/iter_iter.pass.cpp b/test/containers/associative/map/map.cons/iter_iter.pass.cpp
index d981ccf..c1029af 100644
--- a/test/containers/associative/map/map.cons/iter_iter.pass.cpp
+++ b/test/containers/associative/map/map.cons/iter_iter.pass.cpp
@@ -17,7 +17,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/iter_iter_comp.pass.cpp b/test/containers/associative/map/map.cons/iter_iter_comp.pass.cpp
index 0481de2..837fa8c 100644
--- a/test/containers/associative/map/map.cons/iter_iter_comp.pass.cpp
+++ b/test/containers/associative/map/map.cons/iter_iter_comp.pass.cpp
@@ -18,7 +18,7 @@
 #include <cassert>
 
 #include "../../../test_compare.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/iter_iter_comp_alloc.pass.cpp b/test/containers/associative/map/map.cons/iter_iter_comp_alloc.pass.cpp
index 2c76712..81fa3c8 100644
--- a/test/containers/associative/map/map.cons/iter_iter_comp_alloc.pass.cpp
+++ b/test/containers/associative/map/map.cons/iter_iter_comp_alloc.pass.cpp
@@ -20,7 +20,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/move.pass.cpp b/test/containers/associative/map/map.cons/move.pass.cpp
index 323a265..0a0ca44 100644
--- a/test/containers/associative/map/map.cons/move.pass.cpp
+++ b/test/containers/associative/map/map.cons/move.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/move_alloc.pass.cpp b/test/containers/associative/map/map.cons/move_alloc.pass.cpp
index 2bb2c06..d377ad8 100644
--- a/test/containers/associative/map/map.cons/move_alloc.pass.cpp
+++ b/test/containers/associative/map/map.cons/move_alloc.pass.cpp
@@ -19,7 +19,7 @@
 #include "../../../MoveOnly.h"
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.cons/move_assign.pass.cpp b/test/containers/associative/map/map.cons/move_assign.pass.cpp
index 2e6ede7..8b0eca7 100644
--- a/test/containers/associative/map/map.cons/move_assign.pass.cpp
+++ b/test/containers/associative/map/map.cons/move_assign.pass.cpp
@@ -19,7 +19,7 @@
 #include "../../../MoveOnly.h"
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/clear.pass.cpp b/test/containers/associative/map/map.modifiers/clear.pass.cpp
index 77f50ba..c37499d 100644
--- a/test/containers/associative/map/map.modifiers/clear.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/clear.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/emplace.pass.cpp b/test/containers/associative/map/map.modifiers/emplace.pass.cpp
index 9a87bec..5ac4428 100644
--- a/test/containers/associative/map/map.modifiers/emplace.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/emplace.pass.cpp
@@ -20,7 +20,7 @@
 
 #include "../../../Emplaceable.h"
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/emplace_hint.pass.cpp b/test/containers/associative/map/map.modifiers/emplace_hint.pass.cpp
index bf8173f..7ce8c19 100644
--- a/test/containers/associative/map/map.modifiers/emplace_hint.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/emplace_hint.pass.cpp
@@ -19,7 +19,7 @@
 
 #include "../../../Emplaceable.h"
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/erase_iter.pass.cpp b/test/containers/associative/map/map.modifiers/erase_iter.pass.cpp
index 086096b..05fb988 100644
--- a/test/containers/associative/map/map.modifiers/erase_iter.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/erase_iter.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/erase_iter_iter.pass.cpp b/test/containers/associative/map/map.modifiers/erase_iter_iter.pass.cpp
index 6589ace..1b49956 100644
--- a/test/containers/associative/map/map.modifiers/erase_iter_iter.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/erase_iter_iter.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/erase_key.pass.cpp b/test/containers/associative/map/map.modifiers/erase_key.pass.cpp
index 4a93173..e41f512 100644
--- a/test/containers/associative/map/map.modifiers/erase_key.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/erase_key.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/insert_cv.pass.cpp b/test/containers/associative/map/map.modifiers/insert_cv.pass.cpp
index 24d3f84..3d28242 100644
--- a/test/containers/associative/map/map.modifiers/insert_cv.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/insert_cv.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp b/test/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp
index bc7e760..ab325ed 100644
--- a/test/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/insert_iter_cv.pass.cpp b/test/containers/associative/map/map.modifiers/insert_iter_cv.pass.cpp
index 43ca35a..278db46 100644
--- a/test/containers/associative/map/map.modifiers/insert_iter_cv.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/insert_iter_cv.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/insert_iter_iter.pass.cpp b/test/containers/associative/map/map.modifiers/insert_iter_iter.pass.cpp
index d1acdf2..964738b 100644
--- a/test/containers/associative/map/map.modifiers/insert_iter_iter.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/insert_iter_iter.pass.cpp
@@ -18,7 +18,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp b/test/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp
index e84a82b..2216420 100644
--- a/test/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp
@@ -18,7 +18,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.modifiers/insert_rv.pass.cpp b/test/containers/associative/map/map.modifiers/insert_rv.pass.cpp
index c5724c4..fea8895 100644
--- a/test/containers/associative/map/map.modifiers/insert_rv.pass.cpp
+++ b/test/containers/associative/map/map.modifiers/insert_rv.pass.cpp
@@ -18,7 +18,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.ops/count.pass.cpp b/test/containers/associative/map/map.ops/count.pass.cpp
index 70eadac..6628e3d 100644
--- a/test/containers/associative/map/map.ops/count.pass.cpp
+++ b/test/containers/associative/map/map.ops/count.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.ops/equal_range.pass.cpp b/test/containers/associative/map/map.ops/equal_range.pass.cpp
index b08acb0..dff751c 100644
--- a/test/containers/associative/map/map.ops/equal_range.pass.cpp
+++ b/test/containers/associative/map/map.ops/equal_range.pass.cpp
@@ -17,7 +17,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/map/map.ops/find.pass.cpp b/test/containers/associative/map/map.ops/find.pass.cpp
index 4d1beab..a757844 100644
--- a/test/containers/associative/map/map.ops/find.pass.cpp
+++ b/test/containers/associative/map/map.ops/find.pass.cpp
@@ -17,7 +17,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/map/map.ops/lower_bound.pass.cpp b/test/containers/associative/map/map.ops/lower_bound.pass.cpp
index 1ac1753..87b84ee 100644
--- a/test/containers/associative/map/map.ops/lower_bound.pass.cpp
+++ b/test/containers/associative/map/map.ops/lower_bound.pass.cpp
@@ -17,7 +17,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/map/map.ops/upper_bound.pass.cpp b/test/containers/associative/map/map.ops/upper_bound.pass.cpp
index 20973e3..037ceb9 100644
--- a/test/containers/associative/map/map.ops/upper_bound.pass.cpp
+++ b/test/containers/associative/map/map.ops/upper_bound.pass.cpp
@@ -17,7 +17,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/map/map.special/member_swap.pass.cpp b/test/containers/associative/map/map.special/member_swap.pass.cpp
index af59225..4f7bd51 100644
--- a/test/containers/associative/map/map.special/member_swap.pass.cpp
+++ b/test/containers/associative/map/map.special/member_swap.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/map.special/non_member_swap.pass.cpp b/test/containers/associative/map/map.special/non_member_swap.pass.cpp
index e474a46..dc925fd 100644
--- a/test/containers/associative/map/map.special/non_member_swap.pass.cpp
+++ b/test/containers/associative/map/map.special/non_member_swap.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 #include "../../../test_allocator.h"
 #include "../../../test_compare.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/map/types.pass.cpp b/test/containers/associative/map/types.pass.cpp
index aca81df..af2172f 100644
--- a/test/containers/associative/map/types.pass.cpp
+++ b/test/containers/associative/map/types.pass.cpp
@@ -32,7 +32,8 @@
 #include <map>
 #include <type_traits>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
+#include "powerpc-darwin.h"
 
 int main()
 {
@@ -60,7 +61,11 @@ int main()
     static_assert((std::is_same<std::map<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::const_reference, const std::pair<const int, double>&>::value), "");
     static_assert((std::is_same<std::map<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::pointer, min_pointer<std::pair<const int, double>>>::value), "");
     static_assert((std::is_same<std::map<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::const_pointer, min_pointer<const std::pair<const int, double>>>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+    static_assert(sizeof(std::map<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::size_type) == sizeof(std::size_t), "");
+#else
     static_assert((std::is_same<std::map<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::size_type, std::size_t>::value), "");
+#endif
     static_assert((std::is_same<std::map<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::difference_type, std::ptrdiff_t>::value), "");
     }
 #endif
diff --git a/test/containers/associative/multimap/empty.pass.cpp b/test/containers/associative/multimap/empty.pass.cpp
index cafdb73..2384960 100644
--- a/test/containers/associative/multimap/empty.pass.cpp
+++ b/test/containers/associative/multimap/empty.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/iterator.pass.cpp b/test/containers/associative/multimap/iterator.pass.cpp
index a58b583..1fdbfa1 100644
--- a/test/containers/associative/multimap/iterator.pass.cpp
+++ b/test/containers/associative/multimap/iterator.pass.cpp
@@ -29,7 +29,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/max_size.pass.cpp b/test/containers/associative/multimap/max_size.pass.cpp
index 7bcb12a..ccd8b10 100644
--- a/test/containers/associative/multimap/max_size.pass.cpp
+++ b/test/containers/associative/multimap/max_size.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/alloc.pass.cpp b/test/containers/associative/multimap/multimap.cons/alloc.pass.cpp
index aa3b6e2..5b494c9 100644
--- a/test/containers/associative/multimap/multimap.cons/alloc.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/alloc.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/assign_initializer_list.pass.cpp b/test/containers/associative/multimap/multimap.cons/assign_initializer_list.pass.cpp
index 8c658d4..0c89918 100644
--- a/test/containers/associative/multimap/multimap.cons/assign_initializer_list.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/assign_initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/compare.pass.cpp b/test/containers/associative/multimap/multimap.cons/compare.pass.cpp
index 99265ef..9a4e0f9 100644
--- a/test/containers/associative/multimap/multimap.cons/compare.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/compare.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../../../test_compare.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/compare_alloc.pass.cpp b/test/containers/associative/multimap/multimap.cons/compare_alloc.pass.cpp
index 864a542..c578b20 100644
--- a/test/containers/associative/multimap/multimap.cons/compare_alloc.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/compare_alloc.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/copy.pass.cpp b/test/containers/associative/multimap/multimap.cons/copy.pass.cpp
index 65a1e92..7edcc51 100644
--- a/test/containers/associative/multimap/multimap.cons/copy.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/copy.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/copy_alloc.pass.cpp b/test/containers/associative/multimap/multimap.cons/copy_alloc.pass.cpp
index a9cba17..c5b87aa 100644
--- a/test/containers/associative/multimap/multimap.cons/copy_alloc.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/copy_alloc.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/copy_assign.pass.cpp b/test/containers/associative/multimap/multimap.cons/copy_assign.pass.cpp
index 533338c..c7a0e49 100644
--- a/test/containers/associative/multimap/multimap.cons/copy_assign.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/copy_assign.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/default.pass.cpp b/test/containers/associative/multimap/multimap.cons/default.pass.cpp
index ca8225f..2651d90 100644
--- a/test/containers/associative/multimap/multimap.cons/default.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/default.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/initializer_list.pass.cpp b/test/containers/associative/multimap/multimap.cons/initializer_list.pass.cpp
index 139052c..937a202 100644
--- a/test/containers/associative/multimap/multimap.cons/initializer_list.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/initializer_list_compare.pass.cpp b/test/containers/associative/multimap/multimap.cons/initializer_list_compare.pass.cpp
index f2545c0..e667703 100644
--- a/test/containers/associative/multimap/multimap.cons/initializer_list_compare.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/initializer_list_compare.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 #include "../../../test_compare.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/initializer_list_compare_alloc.pass.cpp b/test/containers/associative/multimap/multimap.cons/initializer_list_compare_alloc.pass.cpp
index a2c0cdb..c65c36b 100644
--- a/test/containers/associative/multimap/multimap.cons/initializer_list_compare_alloc.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/initializer_list_compare_alloc.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/iter_iter.pass.cpp b/test/containers/associative/multimap/multimap.cons/iter_iter.pass.cpp
index 78fdbdb..fa062e2 100644
--- a/test/containers/associative/multimap/multimap.cons/iter_iter.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/iter_iter.pass.cpp
@@ -17,7 +17,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/iter_iter_comp.pass.cpp b/test/containers/associative/multimap/multimap.cons/iter_iter_comp.pass.cpp
index 267edc2..d6de594 100644
--- a/test/containers/associative/multimap/multimap.cons/iter_iter_comp.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/iter_iter_comp.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 
 #include "../../../test_compare.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/iter_iter_comp_alloc.pass.cpp b/test/containers/associative/multimap/multimap.cons/iter_iter_comp_alloc.pass.cpp
index 883f64c..dfd946e 100644
--- a/test/containers/associative/multimap/multimap.cons/iter_iter_comp_alloc.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/iter_iter_comp_alloc.pass.cpp
@@ -20,7 +20,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/move.pass.cpp b/test/containers/associative/multimap/multimap.cons/move.pass.cpp
index d6e835c..06bab09 100644
--- a/test/containers/associative/multimap/multimap.cons/move.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/move.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp b/test/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp
index c807b4f..7f5f0f7 100644
--- a/test/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp
@@ -19,7 +19,7 @@
 #include "../../../MoveOnly.h"
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.cons/move_assign.pass.cpp b/test/containers/associative/multimap/multimap.cons/move_assign.pass.cpp
index 0aa7c18..e02a988 100644
--- a/test/containers/associative/multimap/multimap.cons/move_assign.pass.cpp
+++ b/test/containers/associative/multimap/multimap.cons/move_assign.pass.cpp
@@ -19,7 +19,7 @@
 #include "../../../MoveOnly.h"
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/clear.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/clear.pass.cpp
index 4864ec1..fe9b8c8 100644
--- a/test/containers/associative/multimap/multimap.modifiers/clear.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/clear.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/emplace.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/emplace.pass.cpp
index 7af4426..6fbcda9 100644
--- a/test/containers/associative/multimap/multimap.modifiers/emplace.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/emplace.pass.cpp
@@ -19,7 +19,7 @@
 
 #include "../../../Emplaceable.h"
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/emplace_hint.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/emplace_hint.pass.cpp
index 3f94c03..7d5e5e8 100644
--- a/test/containers/associative/multimap/multimap.modifiers/emplace_hint.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/emplace_hint.pass.cpp
@@ -19,7 +19,7 @@
 
 #include "../../../Emplaceable.h"
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/erase_iter.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/erase_iter.pass.cpp
index d2979b1..d91295b 100644
--- a/test/containers/associative/multimap/multimap.modifiers/erase_iter.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/erase_iter.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/erase_iter_iter.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/erase_iter_iter.pass.cpp
index be1ab6f..4d37894 100644
--- a/test/containers/associative/multimap/multimap.modifiers/erase_iter_iter.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/erase_iter_iter.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/erase_key.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/erase_key.pass.cpp
index c5dd6fb..ebae10e 100644
--- a/test/containers/associative/multimap/multimap.modifiers/erase_key.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/erase_key.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/insert_cv.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/insert_cv.pass.cpp
index c23d821..d9afc9d 100644
--- a/test/containers/associative/multimap/multimap.modifiers/insert_cv.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/insert_cv.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/insert_initializer_list.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/insert_initializer_list.pass.cpp
index 8fc080d..5e1a1d4 100644
--- a/test/containers/associative/multimap/multimap.modifiers/insert_initializer_list.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/insert_initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/insert_iter_cv.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/insert_iter_cv.pass.cpp
index 0c8e916..b83c802 100644
--- a/test/containers/associative/multimap/multimap.modifiers/insert_iter_cv.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/insert_iter_cv.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/insert_iter_iter.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/insert_iter_iter.pass.cpp
index 6e3d2f2..70ff7ef 100644
--- a/test/containers/associative/multimap/multimap.modifiers/insert_iter_iter.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/insert_iter_iter.pass.cpp
@@ -18,7 +18,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/insert_iter_rv.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/insert_iter_rv.pass.cpp
index efc99e1..60ca7d4 100644
--- a/test/containers/associative/multimap/multimap.modifiers/insert_iter_rv.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/insert_iter_rv.pass.cpp
@@ -18,7 +18,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.modifiers/insert_rv.pass.cpp b/test/containers/associative/multimap/multimap.modifiers/insert_rv.pass.cpp
index 1678c9d..2f198f8 100644
--- a/test/containers/associative/multimap/multimap.modifiers/insert_rv.pass.cpp
+++ b/test/containers/associative/multimap/multimap.modifiers/insert_rv.pass.cpp
@@ -18,7 +18,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.ops/count.pass.cpp b/test/containers/associative/multimap/multimap.ops/count.pass.cpp
index b0e4c58..34c0413 100644
--- a/test/containers/associative/multimap/multimap.ops/count.pass.cpp
+++ b/test/containers/associative/multimap/multimap.ops/count.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.ops/equal_range.pass.cpp b/test/containers/associative/multimap/multimap.ops/equal_range.pass.cpp
index 4632eb1..a408796 100644
--- a/test/containers/associative/multimap/multimap.ops/equal_range.pass.cpp
+++ b/test/containers/associative/multimap/multimap.ops/equal_range.pass.cpp
@@ -17,7 +17,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/multimap/multimap.ops/find.pass.cpp b/test/containers/associative/multimap/multimap.ops/find.pass.cpp
index e4dba28..fb5afa2 100644
--- a/test/containers/associative/multimap/multimap.ops/find.pass.cpp
+++ b/test/containers/associative/multimap/multimap.ops/find.pass.cpp
@@ -17,7 +17,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/multimap/multimap.ops/lower_bound.pass.cpp b/test/containers/associative/multimap/multimap.ops/lower_bound.pass.cpp
index 5ec1210..49cf6de 100644
--- a/test/containers/associative/multimap/multimap.ops/lower_bound.pass.cpp
+++ b/test/containers/associative/multimap/multimap.ops/lower_bound.pass.cpp
@@ -17,7 +17,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/multimap/multimap.ops/upper_bound.pass.cpp b/test/containers/associative/multimap/multimap.ops/upper_bound.pass.cpp
index aa5a525..1920647 100644
--- a/test/containers/associative/multimap/multimap.ops/upper_bound.pass.cpp
+++ b/test/containers/associative/multimap/multimap.ops/upper_bound.pass.cpp
@@ -17,7 +17,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/multimap/multimap.special/member_swap.pass.cpp b/test/containers/associative/multimap/multimap.special/member_swap.pass.cpp
index 1e1ab23..c8f30aa 100644
--- a/test/containers/associative/multimap/multimap.special/member_swap.pass.cpp
+++ b/test/containers/associative/multimap/multimap.special/member_swap.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/multimap.special/non_member_swap.pass.cpp b/test/containers/associative/multimap/multimap.special/non_member_swap.pass.cpp
index 6f5b92f..d403774 100644
--- a/test/containers/associative/multimap/multimap.special/non_member_swap.pass.cpp
+++ b/test/containers/associative/multimap/multimap.special/non_member_swap.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 #include "../../../test_allocator.h"
 #include "../../../test_compare.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/size.pass.cpp b/test/containers/associative/multimap/size.pass.cpp
index 794c34a..ac71d4c 100644
--- a/test/containers/associative/multimap/size.pass.cpp
+++ b/test/containers/associative/multimap/size.pass.cpp
@@ -16,7 +16,7 @@
 #include <map>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multimap/types.pass.cpp b/test/containers/associative/multimap/types.pass.cpp
index 2fe8fe0..abfc5a4 100644
--- a/test/containers/associative/multimap/types.pass.cpp
+++ b/test/containers/associative/multimap/types.pass.cpp
@@ -32,7 +32,8 @@
 #include <map>
 #include <type_traits>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
+#include "powerpc-darwin.h"
 
 int main()
 {
@@ -60,7 +61,11 @@ int main()
     static_assert((std::is_same<std::multimap<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::const_reference, const std::pair<const int, double>&>::value), "");
     static_assert((std::is_same<std::multimap<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::pointer, min_pointer<std::pair<const int, double>>>::value), "");
     static_assert((std::is_same<std::multimap<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::const_pointer, min_pointer<const std::pair<const int, double>>>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+    static_assert(sizeof(std::multimap<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::size_type) == sizeof(std::size_t), "");
+#else
     static_assert((std::is_same<std::multimap<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::size_type, std::size_t>::value), "");
+#endif
     static_assert((std::is_same<std::multimap<int, double, std::less<int>, min_allocator<std::pair<const int, double>>>::difference_type, std::ptrdiff_t>::value), "");
     }
 #endif
diff --git a/test/containers/associative/multiset/clear.pass.cpp b/test/containers/associative/multiset/clear.pass.cpp
index f325a70..3069de5 100644
--- a/test/containers/associative/multiset/clear.pass.cpp
+++ b/test/containers/associative/multiset/clear.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/count.pass.cpp b/test/containers/associative/multiset/count.pass.cpp
index cba6430..12af167 100644
--- a/test/containers/associative/multiset/count.pass.cpp
+++ b/test/containers/associative/multiset/count.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/emplace.pass.cpp b/test/containers/associative/multiset/emplace.pass.cpp
index 08ac42b..6b76cf0 100644
--- a/test/containers/associative/multiset/emplace.pass.cpp
+++ b/test/containers/associative/multiset/emplace.pass.cpp
@@ -19,7 +19,7 @@
 
 #include "../../Emplaceable.h"
 #include "../../DefaultOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/emplace_hint.pass.cpp b/test/containers/associative/multiset/emplace_hint.pass.cpp
index 1510c01..1eddd1e 100644
--- a/test/containers/associative/multiset/emplace_hint.pass.cpp
+++ b/test/containers/associative/multiset/emplace_hint.pass.cpp
@@ -19,7 +19,7 @@
 
 #include "../../Emplaceable.h"
 #include "../../DefaultOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/empty.pass.cpp b/test/containers/associative/multiset/empty.pass.cpp
index 154180d..32aef90 100644
--- a/test/containers/associative/multiset/empty.pass.cpp
+++ b/test/containers/associative/multiset/empty.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/equal_range.pass.cpp b/test/containers/associative/multiset/equal_range.pass.cpp
index 6babfa1..8c69d0c 100644
--- a/test/containers/associative/multiset/equal_range.pass.cpp
+++ b/test/containers/associative/multiset/equal_range.pass.cpp
@@ -17,7 +17,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/multiset/erase_iter.pass.cpp b/test/containers/associative/multiset/erase_iter.pass.cpp
index 3657f52..b665666 100644
--- a/test/containers/associative/multiset/erase_iter.pass.cpp
+++ b/test/containers/associative/multiset/erase_iter.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/erase_iter_iter.pass.cpp b/test/containers/associative/multiset/erase_iter_iter.pass.cpp
index de4c878..e1d7090 100644
--- a/test/containers/associative/multiset/erase_iter_iter.pass.cpp
+++ b/test/containers/associative/multiset/erase_iter_iter.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/erase_key.pass.cpp b/test/containers/associative/multiset/erase_key.pass.cpp
index 1702329..e9bce1e 100644
--- a/test/containers/associative/multiset/erase_key.pass.cpp
+++ b/test/containers/associative/multiset/erase_key.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/find.pass.cpp b/test/containers/associative/multiset/find.pass.cpp
index b4963e9..364460a 100644
--- a/test/containers/associative/multiset/find.pass.cpp
+++ b/test/containers/associative/multiset/find.pass.cpp
@@ -17,7 +17,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/multiset/insert_cv.pass.cpp b/test/containers/associative/multiset/insert_cv.pass.cpp
index 57e1e98..1797157 100644
--- a/test/containers/associative/multiset/insert_cv.pass.cpp
+++ b/test/containers/associative/multiset/insert_cv.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/insert_initializer_list.pass.cpp b/test/containers/associative/multiset/insert_initializer_list.pass.cpp
index c609d24..7e923f2 100644
--- a/test/containers/associative/multiset/insert_initializer_list.pass.cpp
+++ b/test/containers/associative/multiset/insert_initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/insert_iter_cv.pass.cpp b/test/containers/associative/multiset/insert_iter_cv.pass.cpp
index fccc2b7..7d20402 100644
--- a/test/containers/associative/multiset/insert_iter_cv.pass.cpp
+++ b/test/containers/associative/multiset/insert_iter_cv.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/insert_iter_iter.pass.cpp b/test/containers/associative/multiset/insert_iter_iter.pass.cpp
index 3cfa9dd..189c454 100644
--- a/test/containers/associative/multiset/insert_iter_iter.pass.cpp
+++ b/test/containers/associative/multiset/insert_iter_iter.pass.cpp
@@ -18,7 +18,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/insert_iter_rv.pass.cpp b/test/containers/associative/multiset/insert_iter_rv.pass.cpp
index f09d97d..342c6fd 100644
--- a/test/containers/associative/multiset/insert_iter_rv.pass.cpp
+++ b/test/containers/associative/multiset/insert_iter_rv.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../../MoveOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/insert_rv.pass.cpp b/test/containers/associative/multiset/insert_rv.pass.cpp
index e9e773c..1030e08 100644
--- a/test/containers/associative/multiset/insert_rv.pass.cpp
+++ b/test/containers/associative/multiset/insert_rv.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../../MoveOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/iterator.pass.cpp b/test/containers/associative/multiset/iterator.pass.cpp
index f801de7..ccb6c66 100644
--- a/test/containers/associative/multiset/iterator.pass.cpp
+++ b/test/containers/associative/multiset/iterator.pass.cpp
@@ -29,7 +29,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/lower_bound.pass.cpp b/test/containers/associative/multiset/lower_bound.pass.cpp
index 48e297a..e466791 100644
--- a/test/containers/associative/multiset/lower_bound.pass.cpp
+++ b/test/containers/associative/multiset/lower_bound.pass.cpp
@@ -17,7 +17,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/multiset/max_size.pass.cpp b/test/containers/associative/multiset/max_size.pass.cpp
index a209d70..5524f77 100644
--- a/test/containers/associative/multiset/max_size.pass.cpp
+++ b/test/containers/associative/multiset/max_size.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp b/test/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp
index 16ba28a..7d76581 100644
--- a/test/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp
+++ b/test/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/multiset.cons/default.pass.cpp b/test/containers/associative/multiset/multiset.cons/default.pass.cpp
index cf24bf7..b6176c9 100644
--- a/test/containers/associative/multiset/multiset.cons/default.pass.cpp
+++ b/test/containers/associative/multiset/multiset.cons/default.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp b/test/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp
index 60e6940..dadafec 100644
--- a/test/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp
+++ b/test/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/multiset.cons/iter_iter.pass.cpp b/test/containers/associative/multiset/multiset.cons/iter_iter.pass.cpp
index 3f00539..f6c1fd7 100644
--- a/test/containers/associative/multiset/multiset.cons/iter_iter.pass.cpp
+++ b/test/containers/associative/multiset/multiset.cons/iter_iter.pass.cpp
@@ -18,7 +18,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/multiset.cons/move.pass.cpp b/test/containers/associative/multiset/multiset.cons/move.pass.cpp
index 97f593b..a5195f7 100644
--- a/test/containers/associative/multiset/multiset.cons/move.pass.cpp
+++ b/test/containers/associative/multiset/multiset.cons/move.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/multiset.cons/move_assign.pass.cpp b/test/containers/associative/multiset/multiset.cons/move_assign.pass.cpp
index e02942f..2af24ce 100644
--- a/test/containers/associative/multiset/multiset.cons/move_assign.pass.cpp
+++ b/test/containers/associative/multiset/multiset.cons/move_assign.pass.cpp
@@ -19,7 +19,7 @@
 #include "../../../MoveOnly.h"
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/multiset.special/member_swap.pass.cpp b/test/containers/associative/multiset/multiset.special/member_swap.pass.cpp
index 8d5b1e8..ce90689 100644
--- a/test/containers/associative/multiset/multiset.special/member_swap.pass.cpp
+++ b/test/containers/associative/multiset/multiset.special/member_swap.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/size.pass.cpp b/test/containers/associative/multiset/size.pass.cpp
index 8129a9c..68099b5 100644
--- a/test/containers/associative/multiset/size.pass.cpp
+++ b/test/containers/associative/multiset/size.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/multiset/types.pass.cpp b/test/containers/associative/multiset/types.pass.cpp
index e3331cd..1920278 100644
--- a/test/containers/associative/multiset/types.pass.cpp
+++ b/test/containers/associative/multiset/types.pass.cpp
@@ -32,7 +32,8 @@
 #include <set>
 #include <type_traits>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
+#include "powerpc-darwin.h"
 
 int main()
 {
@@ -60,7 +61,11 @@ int main()
     static_assert((std::is_same<std::multiset<int, std::less<int>, min_allocator<int>>::const_reference, const int&>::value), "");
     static_assert((std::is_same<std::multiset<int, std::less<int>, min_allocator<int>>::pointer, min_pointer<int>>::value), "");
     static_assert((std::is_same<std::multiset<int, std::less<int>, min_allocator<int>>::const_pointer, min_pointer<const int>>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+    static_assert(sizeof(std::multiset<int, std::less<int>, min_allocator<int>>::size_type) == sizeof(std::size_t), "");
+#else
     static_assert((std::is_same<std::multiset<int, std::less<int>, min_allocator<int>>::size_type, std::size_t>::value), "");
+#endif
     static_assert((std::is_same<std::multiset<int, std::less<int>, min_allocator<int>>::difference_type, std::ptrdiff_t>::value), "");
     }
 #endif
diff --git a/test/containers/associative/multiset/upper_bound.pass.cpp b/test/containers/associative/multiset/upper_bound.pass.cpp
index 932ab0b..7ad3d6c 100644
--- a/test/containers/associative/multiset/upper_bound.pass.cpp
+++ b/test/containers/associative/multiset/upper_bound.pass.cpp
@@ -17,7 +17,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/set/clear.pass.cpp b/test/containers/associative/set/clear.pass.cpp
index c6e0102..4439ad3 100644
--- a/test/containers/associative/set/clear.pass.cpp
+++ b/test/containers/associative/set/clear.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/count.pass.cpp b/test/containers/associative/set/count.pass.cpp
index 7d7a31a..a2dc177 100644
--- a/test/containers/associative/set/count.pass.cpp
+++ b/test/containers/associative/set/count.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/emplace.pass.cpp b/test/containers/associative/set/emplace.pass.cpp
index 69fdbee..731382f 100644
--- a/test/containers/associative/set/emplace.pass.cpp
+++ b/test/containers/associative/set/emplace.pass.cpp
@@ -19,7 +19,7 @@
 
 #include "../../Emplaceable.h"
 #include "../../DefaultOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/emplace_hint.pass.cpp b/test/containers/associative/set/emplace_hint.pass.cpp
index 8e7fbbc..f06cfec 100644
--- a/test/containers/associative/set/emplace_hint.pass.cpp
+++ b/test/containers/associative/set/emplace_hint.pass.cpp
@@ -19,7 +19,7 @@
 
 #include "../../Emplaceable.h"
 #include "../../DefaultOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/empty.pass.cpp b/test/containers/associative/set/empty.pass.cpp
index 305ae39..eb10802 100644
--- a/test/containers/associative/set/empty.pass.cpp
+++ b/test/containers/associative/set/empty.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/equal_range.pass.cpp b/test/containers/associative/set/equal_range.pass.cpp
index 5b83887..8a180ef 100644
--- a/test/containers/associative/set/equal_range.pass.cpp
+++ b/test/containers/associative/set/equal_range.pass.cpp
@@ -17,7 +17,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/set/erase_iter.pass.cpp b/test/containers/associative/set/erase_iter.pass.cpp
index f05d481..21666c3 100644
--- a/test/containers/associative/set/erase_iter.pass.cpp
+++ b/test/containers/associative/set/erase_iter.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/erase_iter_iter.pass.cpp b/test/containers/associative/set/erase_iter_iter.pass.cpp
index 953d1be..4799503 100644
--- a/test/containers/associative/set/erase_iter_iter.pass.cpp
+++ b/test/containers/associative/set/erase_iter_iter.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/erase_key.pass.cpp b/test/containers/associative/set/erase_key.pass.cpp
index 12ee0af..9d92bd7 100644
--- a/test/containers/associative/set/erase_key.pass.cpp
+++ b/test/containers/associative/set/erase_key.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/find.pass.cpp b/test/containers/associative/set/find.pass.cpp
index 6ce47f8..d08d2fb 100644
--- a/test/containers/associative/set/find.pass.cpp
+++ b/test/containers/associative/set/find.pass.cpp
@@ -17,7 +17,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/set/insert_cv.pass.cpp b/test/containers/associative/set/insert_cv.pass.cpp
index eabd1a8..18d5c2e 100644
--- a/test/containers/associative/set/insert_cv.pass.cpp
+++ b/test/containers/associative/set/insert_cv.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/insert_initializer_list.pass.cpp b/test/containers/associative/set/insert_initializer_list.pass.cpp
index d75e8a8..fc6d612 100644
--- a/test/containers/associative/set/insert_initializer_list.pass.cpp
+++ b/test/containers/associative/set/insert_initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/insert_iter_cv.pass.cpp b/test/containers/associative/set/insert_iter_cv.pass.cpp
index d86d40e..718e720 100644
--- a/test/containers/associative/set/insert_iter_cv.pass.cpp
+++ b/test/containers/associative/set/insert_iter_cv.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/insert_iter_iter.pass.cpp b/test/containers/associative/set/insert_iter_iter.pass.cpp
index d99dbe3..ff729a0 100644
--- a/test/containers/associative/set/insert_iter_iter.pass.cpp
+++ b/test/containers/associative/set/insert_iter_iter.pass.cpp
@@ -18,7 +18,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/insert_iter_rv.pass.cpp b/test/containers/associative/set/insert_iter_rv.pass.cpp
index cf2dcbf..c149fa3 100644
--- a/test/containers/associative/set/insert_iter_rv.pass.cpp
+++ b/test/containers/associative/set/insert_iter_rv.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../../MoveOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/insert_rv.pass.cpp b/test/containers/associative/set/insert_rv.pass.cpp
index 0b58af6..3989451 100644
--- a/test/containers/associative/set/insert_rv.pass.cpp
+++ b/test/containers/associative/set/insert_rv.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../../MoveOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/iterator.pass.cpp b/test/containers/associative/set/iterator.pass.cpp
index f52e845..39c8cc6 100644
--- a/test/containers/associative/set/iterator.pass.cpp
+++ b/test/containers/associative/set/iterator.pass.cpp
@@ -29,7 +29,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/lower_bound.pass.cpp b/test/containers/associative/set/lower_bound.pass.cpp
index 1562dfa..df202f3 100644
--- a/test/containers/associative/set/lower_bound.pass.cpp
+++ b/test/containers/associative/set/lower_bound.pass.cpp
@@ -17,7 +17,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/associative/set/max_size.pass.cpp b/test/containers/associative/set/max_size.pass.cpp
index b744b9e..cde4397 100644
--- a/test/containers/associative/set/max_size.pass.cpp
+++ b/test/containers/associative/set/max_size.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/set.cons/assign_initializer_list.pass.cpp b/test/containers/associative/set/set.cons/assign_initializer_list.pass.cpp
index 26f38e9..892ae5a 100644
--- a/test/containers/associative/set/set.cons/assign_initializer_list.pass.cpp
+++ b/test/containers/associative/set/set.cons/assign_initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/set.cons/default.pass.cpp b/test/containers/associative/set/set.cons/default.pass.cpp
index 300b4fc..d047b12 100644
--- a/test/containers/associative/set/set.cons/default.pass.cpp
+++ b/test/containers/associative/set/set.cons/default.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/set.cons/initializer_list.pass.cpp b/test/containers/associative/set/set.cons/initializer_list.pass.cpp
index 7d981a1..2ad538e 100644
--- a/test/containers/associative/set/set.cons/initializer_list.pass.cpp
+++ b/test/containers/associative/set/set.cons/initializer_list.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/set.cons/iter_iter.pass.cpp b/test/containers/associative/set/set.cons/iter_iter.pass.cpp
index 3248257..7ca7fe1 100644
--- a/test/containers/associative/set/set.cons/iter_iter.pass.cpp
+++ b/test/containers/associative/set/set.cons/iter_iter.pass.cpp
@@ -18,7 +18,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/set.cons/move.pass.cpp b/test/containers/associative/set/set.cons/move.pass.cpp
index 2d1b37f..53d4bd6 100644
--- a/test/containers/associative/set/set.cons/move.pass.cpp
+++ b/test/containers/associative/set/set.cons/move.pass.cpp
@@ -18,7 +18,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/set.cons/move_assign.pass.cpp b/test/containers/associative/set/set.cons/move_assign.pass.cpp
index 3e82e28..48a799e 100644
--- a/test/containers/associative/set/set.cons/move_assign.pass.cpp
+++ b/test/containers/associative/set/set.cons/move_assign.pass.cpp
@@ -19,7 +19,7 @@
 #include "../../../MoveOnly.h"
 #include "../../../test_compare.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/set.special/member_swap.pass.cpp b/test/containers/associative/set/set.special/member_swap.pass.cpp
index aa38fe0..f72abd7 100644
--- a/test/containers/associative/set/set.special/member_swap.pass.cpp
+++ b/test/containers/associative/set/set.special/member_swap.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/size.pass.cpp b/test/containers/associative/set/size.pass.cpp
index e1b6b6c..e786547 100644
--- a/test/containers/associative/set/size.pass.cpp
+++ b/test/containers/associative/set/size.pass.cpp
@@ -16,7 +16,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/associative/set/types.pass.cpp b/test/containers/associative/set/types.pass.cpp
index 04b9ead..bf001e4 100644
--- a/test/containers/associative/set/types.pass.cpp
+++ b/test/containers/associative/set/types.pass.cpp
@@ -32,7 +32,8 @@
 #include <set>
 #include <type_traits>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
+#include "powerpc-darwin.h"
 
 int main()
 {
@@ -60,7 +61,11 @@ int main()
     static_assert((std::is_same<std::set<int, std::less<int>, min_allocator<int>>::const_reference, const int&>::value), "");
     static_assert((std::is_same<std::set<int, std::less<int>, min_allocator<int>>::pointer, min_pointer<int>>::value), "");
     static_assert((std::is_same<std::set<int, std::less<int>, min_allocator<int>>::const_pointer, min_pointer<const int>>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+    static_assert(sizeof(std::set<int, std::less<int>, min_allocator<int>>::size_type) == sizeof(std::size_t), "");
+#else
     static_assert((std::is_same<std::set<int, std::less<int>, min_allocator<int>>::size_type, std::size_t>::value), "");
+#endif
     static_assert((std::is_same<std::set<int, std::less<int>, min_allocator<int>>::difference_type, std::ptrdiff_t>::value), "");
     }
 #endif
diff --git a/test/containers/associative/set/upper_bound.pass.cpp b/test/containers/associative/set/upper_bound.pass.cpp
index 5e889d2..10a28f0 100644
--- a/test/containers/associative/set/upper_bound.pass.cpp
+++ b/test/containers/associative/set/upper_bound.pass.cpp
@@ -17,7 +17,7 @@
 #include <set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 #include "private_constructor.hpp"
 
 int main()
diff --git a/test/containers/min_allocator.h b/test/containers/min_allocator.h
deleted file mode 100644
index c0d28e5..0000000
--- a/test/containers/min_allocator.h
+++ /dev/null
@@ -1,252 +0,0 @@
-#ifndef MIN_ALLOCATOR_H
-#define MIN_ALLOCATOR_H
-
-#if __cplusplus >= 201103L
-
-#include <memory>
-
-template <class T> class min_pointer;
-template <class T> class min_pointer<const T>;
-template <> class min_pointer<void>;
-template <> class min_pointer<const void>;
-template <class T> class min_allocator;
-
-template <>
-class min_pointer<const void>
-{
-    const void* ptr_;
-public:
-    min_pointer() noexcept = default;
-    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
-    template <class T>
-    min_pointer(min_pointer<T> p) : ptr_(p.ptr_) {}
-
-    explicit operator bool() const {return ptr_ != nullptr;}
-
-    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
-    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
-    template <class U> friend class min_pointer;
-};
-
-template <>
-class min_pointer<void>
-{
-    void* ptr_;
-public:
-    min_pointer() noexcept = default;
-    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
-    template <class T,
-              class = typename std::enable_if
-                       <
-                            !std::is_const<T>::value
-                       >::type
-             >
-    min_pointer(min_pointer<T> p) : ptr_(p.ptr_) {}
-
-    explicit operator bool() const {return ptr_ != nullptr;}
-
-    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
-    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
-    template <class U> friend class min_pointer;
-};
-
-template <class T>
-class min_pointer
-{
-    T* ptr_;
-
-    explicit min_pointer(T* p) : ptr_(p) {}
-public:
-    min_pointer() noexcept = default;
-    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
-    explicit min_pointer(min_pointer<void> p) : ptr_(static_cast<T*>(p.ptr_)) {}
-
-    explicit operator bool() const {return ptr_ != nullptr;}
-    
-    typedef std::ptrdiff_t difference_type;
-    typedef T& reference;
-    typedef T* pointer;
-    typedef T value_type;
-    typedef std::random_access_iterator_tag iterator_category;
-
-    reference operator*() const {return *ptr_;}
-    pointer operator->() const {return ptr_;}
-
-    min_pointer& operator++() {++ptr_; return *this;}
-    min_pointer operator++(int) {min_pointer tmp(*this); ++ptr_; return tmp;}
-
-    min_pointer& operator--() {--ptr_; return *this;}
-    min_pointer operator--(int) {min_pointer tmp(*this); --ptr_; return tmp;}
-
-    min_pointer& operator+=(difference_type n) {ptr_ += n; return *this;}
-    min_pointer& operator-=(difference_type n) {ptr_ -= n; return *this;}
-
-    min_pointer operator+(difference_type n) const
-    {
-        min_pointer tmp(*this);
-        tmp += n;
-        return tmp;
-    }
-
-    friend min_pointer operator+(difference_type n, min_pointer x)
-    {
-        return x + n;
-    }
-
-    min_pointer operator-(difference_type n) const
-    {
-        min_pointer tmp(*this);
-        tmp -= n;
-        return tmp;
-    }
-
-    friend difference_type operator-(min_pointer x, min_pointer y)
-    {
-        return x.ptr_ - y.ptr_;
-    }
-
-    reference operator[](difference_type n) const {return ptr_[n];}
-
-    friend bool operator< (min_pointer x, min_pointer y) {return x.ptr_ < y.ptr_;}
-    friend bool operator> (min_pointer x, min_pointer y) {return y < x;}
-    friend bool operator<=(min_pointer x, min_pointer y) {return !(y < x);}
-    friend bool operator>=(min_pointer x, min_pointer y) {return !(x < y);}
-
-    static min_pointer pointer_to(T& t) {return min_pointer(std::addressof(t));}
-
-    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
-    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
-    template <class U> friend class min_pointer;
-    template <class U> friend class min_allocator;
-};
-
-template <class T>
-class min_pointer<const T>
-{
-    const T* ptr_;
-
-    explicit min_pointer(const T* p) : ptr_(p) {}
-public:
-    min_pointer() noexcept = default;
-    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
-    min_pointer(min_pointer<T> p) : ptr_(p.ptr_) {}
-    explicit min_pointer(min_pointer<const void> p) : ptr_(static_cast<const T*>(p.ptr_)) {}
-
-    explicit operator bool() const {return ptr_ != nullptr;}
-
-    typedef std::ptrdiff_t difference_type;
-    typedef const T& reference;
-    typedef const T* pointer;
-    typedef const T value_type;
-    typedef std::random_access_iterator_tag iterator_category;
-
-    reference operator*() const {return *ptr_;}
-    pointer operator->() const {return ptr_;}
-
-    min_pointer& operator++() {++ptr_; return *this;}
-    min_pointer operator++(int) {min_pointer tmp(*this); ++ptr_; return tmp;}
-
-    min_pointer& operator--() {--ptr_; return *this;}
-    min_pointer operator--(int) {min_pointer tmp(*this); --ptr_; return tmp;}
-
-    min_pointer& operator+=(difference_type n) {ptr_ += n; return *this;}
-    min_pointer& operator-=(difference_type n) {ptr_ -= n; return *this;}
-
-    min_pointer operator+(difference_type n) const
-    {
-        min_pointer tmp(*this);
-        tmp += n;
-        return tmp;
-    }
-
-    friend min_pointer operator+(difference_type n, min_pointer x)
-    {
-        return x + n;
-    }
-
-    min_pointer operator-(difference_type n) const
-    {
-        min_pointer tmp(*this);
-        tmp -= n;
-        return tmp;
-    }
-
-    friend difference_type operator-(min_pointer x, min_pointer y)
-    {
-        return x.ptr_ - y.ptr_;
-    }
-
-    reference operator[](difference_type n) const {return ptr_[n];}
-
-    friend bool operator< (min_pointer x, min_pointer y) {return x.ptr_ < y.ptr_;}
-    friend bool operator> (min_pointer x, min_pointer y) {return y < x;}
-    friend bool operator<=(min_pointer x, min_pointer y) {return !(y < x);}
-    friend bool operator>=(min_pointer x, min_pointer y) {return !(x < y);}
-
-    static min_pointer pointer_to(const T& t) {return min_pointer(std::addressof(t));}
-
-    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
-    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
-    template <class U> friend class min_pointer;
-};
-
-template <class T>
-inline
-bool
-operator==(min_pointer<T> x, std::nullptr_t)
-{
-    return !static_cast<bool>(x);
-}
-
-template <class T>
-inline
-bool
-operator==(std::nullptr_t, min_pointer<T> x)
-{
-    return !static_cast<bool>(x);
-}
-
-template <class T>
-inline
-bool
-operator!=(min_pointer<T> x, std::nullptr_t)
-{
-    return static_cast<bool>(x);
-}
-
-template <class T>
-inline
-bool
-operator!=(std::nullptr_t, min_pointer<T> x)
-{
-    return static_cast<bool>(x);
-}
-
-template <class T>
-class min_allocator
-{
-public:
-    typedef T value_type;
-    typedef min_pointer<T> pointer;
-
-    min_allocator() = default;
-    template <class U>
-    min_allocator(min_allocator<U>) {}
-
-    pointer allocate(std::ptrdiff_t n)
-    {
-        return pointer(static_cast<T*>(::operator new(n*sizeof(T))));
-    }
-
-    void deallocate(pointer p, std::ptrdiff_t)
-    {
-        return ::operator delete(p.ptr_);
-    }
-
-    friend bool operator==(min_allocator, min_allocator) {return true;}
-    friend bool operator!=(min_allocator x, min_allocator y) {return !(x == y);}
-};
-
-#endif  // __cplusplus >= 201103L
-
-#endif  // MIN_ALLOCATOR_H
diff --git a/test/containers/sequences/array/types.pass.cpp b/test/containers/sequences/array/types.pass.cpp
index 065ade9..ff0a267 100644
--- a/test/containers/sequences/array/types.pass.cpp
+++ b/test/containers/sequences/array/types.pass.cpp
@@ -29,6 +29,8 @@
 #include <iterator>
 #include <type_traits>
 
+#include "powerpc-darwin.h"
+
 int main()
 {
     {
@@ -40,7 +42,11 @@ int main()
         static_assert((std::is_same<C::const_iterator, const T*>::value), "");
         static_assert((std::is_same<C::pointer, T*>::value), "");
         static_assert((std::is_same<C::const_pointer, const T*>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+        static_assert(sizeof(C::size_type) == sizeof(std::size_t), "");
+#else
         static_assert((std::is_same<C::size_type, std::size_t>::value), "");
+#endif
         static_assert((std::is_same<C::difference_type, std::ptrdiff_t>::value), "");
         static_assert((std::is_same<C::reverse_iterator, std::reverse_iterator<C::iterator> >::value), "");
         static_assert((std::is_same<C::const_reverse_iterator, std::reverse_iterator<C::const_iterator> >::value), "");
@@ -54,7 +60,11 @@ int main()
         static_assert((std::is_same<C::const_iterator, const T*>::value), "");
         static_assert((std::is_same<C::pointer, T*>::value), "");
         static_assert((std::is_same<C::const_pointer, const T*>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+        static_assert(sizeof(C::size_type) == sizeof(std::size_t), "");
+#else
         static_assert((std::is_same<C::size_type, std::size_t>::value), "");
+#endif
         static_assert((std::is_same<C::difference_type, std::ptrdiff_t>::value), "");
         static_assert((std::is_same<C::reverse_iterator, std::reverse_iterator<C::iterator> >::value), "");
         static_assert((std::is_same<C::const_reverse_iterator, std::reverse_iterator<C::const_iterator> >::value), "");
diff --git a/test/containers/sequences/deque/deque.capacity/access.pass.cpp b/test/containers/sequences/deque/deque.capacity/access.pass.cpp
index 1215f95..77aaf3c 100644
--- a/test/containers/sequences/deque/deque.capacity/access.pass.cpp
+++ b/test/containers/sequences/deque/deque.capacity/access.pass.cpp
@@ -24,7 +24,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.capacity/resize_size.pass.cpp b/test/containers/sequences/deque/deque.capacity/resize_size.pass.cpp
index fee4a89..15f49df 100644
--- a/test/containers/sequences/deque/deque.capacity/resize_size.pass.cpp
+++ b/test/containers/sequences/deque/deque.capacity/resize_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.capacity/resize_size_value.pass.cpp b/test/containers/sequences/deque/deque.capacity/resize_size_value.pass.cpp
index b05bffa..727b5d5 100644
--- a/test/containers/sequences/deque/deque.capacity/resize_size_value.pass.cpp
+++ b/test/containers/sequences/deque/deque.capacity/resize_size_value.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.capacity/shrink_to_fit.pass.cpp b/test/containers/sequences/deque/deque.capacity/shrink_to_fit.pass.cpp
index b823ace..0ac1d5a 100644
--- a/test/containers/sequences/deque/deque.capacity/shrink_to_fit.pass.cpp
+++ b/test/containers/sequences/deque/deque.capacity/shrink_to_fit.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.cons/alloc.pass.cpp b/test/containers/sequences/deque/deque.cons/alloc.pass.cpp
index e23e500..1bb672c 100644
--- a/test/containers/sequences/deque/deque.cons/alloc.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/alloc.pass.cpp
@@ -16,7 +16,7 @@
 
 #include "../../../test_allocator.h"
 #include "../../../NotConstructible.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class T, class Allocator>
 void
diff --git a/test/containers/sequences/deque/deque.cons/assign_initializer_list.pass.cpp b/test/containers/sequences/deque/deque.cons/assign_initializer_list.pass.cpp
index 27b8bbb..c760b43 100644
--- a/test/containers/sequences/deque/deque.cons/assign_initializer_list.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/assign_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/deque/deque.cons/assign_iter_iter.pass.cpp b/test/containers/sequences/deque/deque.cons/assign_iter_iter.pass.cpp
index 0c60d75..6594984 100644
--- a/test/containers/sequences/deque/deque.cons/assign_iter_iter.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/assign_iter_iter.pass.cpp
@@ -16,7 +16,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.cons/assign_size_value.pass.cpp b/test/containers/sequences/deque/deque.cons/assign_size_value.pass.cpp
index 7401f04..fd6dd6e 100644
--- a/test/containers/sequences/deque/deque.cons/assign_size_value.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/assign_size_value.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.cons/copy.pass.cpp b/test/containers/sequences/deque/deque.cons/copy.pass.cpp
index 4029bcc..8f79e12 100644
--- a/test/containers/sequences/deque/deque.cons/copy.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/copy.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/deque/deque.cons/copy_alloc.pass.cpp b/test/containers/sequences/deque/deque.cons/copy_alloc.pass.cpp
index 156e011..9cf660c 100644
--- a/test/containers/sequences/deque/deque.cons/copy_alloc.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/copy_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/deque/deque.cons/default.pass.cpp b/test/containers/sequences/deque/deque.cons/default.pass.cpp
index 910421c..f8754f1 100644
--- a/test/containers/sequences/deque/deque.cons/default.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/default.pass.cpp
@@ -16,7 +16,7 @@
 
 #include "../../../stack_allocator.h"
 #include "../../../NotConstructible.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class T, class Allocator>
 void
diff --git a/test/containers/sequences/deque/deque.cons/initializer_list.pass.cpp b/test/containers/sequences/deque/deque.cons/initializer_list.pass.cpp
index 537ded5..a9e0218 100644
--- a/test/containers/sequences/deque/deque.cons/initializer_list.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/deque/deque.cons/initializer_list_alloc.pass.cpp b/test/containers/sequences/deque/deque.cons/initializer_list_alloc.pass.cpp
index 66ee3ab..a2529b4 100644
--- a/test/containers/sequences/deque/deque.cons/initializer_list_alloc.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/initializer_list_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/deque/deque.cons/iter_iter.pass.cpp b/test/containers/sequences/deque/deque.cons/iter_iter.pass.cpp
index 1a85871..faadf2b 100644
--- a/test/containers/sequences/deque/deque.cons/iter_iter.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/iter_iter.pass.cpp
@@ -16,7 +16,7 @@
 
 #include "../../../stack_allocator.h"
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class InputIterator>
 void
diff --git a/test/containers/sequences/deque/deque.cons/iter_iter_alloc.pass.cpp b/test/containers/sequences/deque/deque.cons/iter_iter_alloc.pass.cpp
index 2070f4a..89d9b34 100644
--- a/test/containers/sequences/deque/deque.cons/iter_iter_alloc.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/iter_iter_alloc.pass.cpp
@@ -17,7 +17,7 @@
 
 #include "test_iterators.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class InputIterator, class Allocator>
 void
diff --git a/test/containers/sequences/deque/deque.cons/move.pass.cpp b/test/containers/sequences/deque/deque.cons/move.pass.cpp
index 5764c61..e2fb7e6 100644
--- a/test/containers/sequences/deque/deque.cons/move.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/move.pass.cpp
@@ -16,7 +16,7 @@
 
 #include "../../../MoveOnly.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/deque/deque.cons/move_alloc.pass.cpp b/test/containers/sequences/deque/deque.cons/move_alloc.pass.cpp
index def1fc3..f801ceb 100644
--- a/test/containers/sequences/deque/deque.cons/move_alloc.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/move_alloc.pass.cpp
@@ -16,7 +16,7 @@
 
 #include "../../../MoveOnly.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/deque/deque.cons/move_assign.pass.cpp b/test/containers/sequences/deque/deque.cons/move_assign.pass.cpp
index a9e760f..eaab0f7 100644
--- a/test/containers/sequences/deque/deque.cons/move_assign.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/move_assign.pass.cpp
@@ -16,7 +16,7 @@
 
 #include "../../../MoveOnly.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/deque/deque.cons/op_equal.pass.cpp b/test/containers/sequences/deque/deque.cons/op_equal.pass.cpp
index bb169c1..4cbb0fb 100644
--- a/test/containers/sequences/deque/deque.cons/op_equal.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/op_equal.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/deque/deque.cons/op_equal_initializer_list.pass.cpp b/test/containers/sequences/deque/deque.cons/op_equal_initializer_list.pass.cpp
index 577b51c..6468e43 100644
--- a/test/containers/sequences/deque/deque.cons/op_equal_initializer_list.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/op_equal_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/deque/deque.cons/size.pass.cpp b/test/containers/sequences/deque/deque.cons/size.pass.cpp
index 1f07caf..8ce1ab2 100644
--- a/test/containers/sequences/deque/deque.cons/size.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/size.pass.cpp
@@ -16,7 +16,7 @@
 
 #include "../../../stack_allocator.h"
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class T, class Allocator>
 void
diff --git a/test/containers/sequences/deque/deque.cons/size_value.pass.cpp b/test/containers/sequences/deque/deque.cons/size_value.pass.cpp
index 782c0ed..859deba 100644
--- a/test/containers/sequences/deque/deque.cons/size_value.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/size_value.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class T, class Allocator>
 void
diff --git a/test/containers/sequences/deque/deque.cons/size_value_alloc.pass.cpp b/test/containers/sequences/deque/deque.cons/size_value_alloc.pass.cpp
index c61ce15..5693be7 100644
--- a/test/containers/sequences/deque/deque.cons/size_value_alloc.pass.cpp
+++ b/test/containers/sequences/deque/deque.cons/size_value_alloc.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class T, class Allocator>
 void
diff --git a/test/containers/sequences/deque/deque.modifiers/emplace.pass.cpp b/test/containers/sequences/deque/deque.modifiers/emplace.pass.cpp
index d332bb4..806f728 100644
--- a/test/containers/sequences/deque/deque.modifiers/emplace.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/emplace.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../Emplaceable.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
diff --git a/test/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp b/test/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp
index 892418e..aa977eb 100644
--- a/test/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../Emplaceable.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
diff --git a/test/containers/sequences/deque/deque.modifiers/emplace_front.pass.cpp b/test/containers/sequences/deque/deque.modifiers/emplace_front.pass.cpp
index 6eebfa8..cf09d6e 100644
--- a/test/containers/sequences/deque/deque.modifiers/emplace_front.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/emplace_front.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../Emplaceable.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
diff --git a/test/containers/sequences/deque/deque.modifiers/erase_iter.pass.cpp b/test/containers/sequences/deque/deque.modifiers/erase_iter.pass.cpp
index 1b4da3f..bfab2a3 100644
--- a/test/containers/sequences/deque/deque.modifiers/erase_iter.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/erase_iter.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.modifiers/erase_iter_iter.pass.cpp b/test/containers/sequences/deque/deque.modifiers/erase_iter_iter.pass.cpp
index 37b6c1c..b7fa4f6 100644
--- a/test/containers/sequences/deque/deque.modifiers/erase_iter_iter.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/erase_iter_iter.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.modifiers/insert_iter_initializer_list.pass.cpp b/test/containers/sequences/deque/deque.modifiers/insert_iter_initializer_list.pass.cpp
index 487db6b..5f78040 100644
--- a/test/containers/sequences/deque/deque.modifiers/insert_iter_initializer_list.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/insert_iter_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/deque/deque.modifiers/insert_iter_iter.pass.cpp b/test/containers/sequences/deque/deque.modifiers/insert_iter_iter.pass.cpp
index 1cf507c..6ab948e 100644
--- a/test/containers/sequences/deque/deque.modifiers/insert_iter_iter.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/insert_iter_iter.pass.cpp
@@ -18,7 +18,7 @@
 #include "test_iterators.h"
 #include "../../../MoveOnly.h"
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.modifiers/insert_rvalue.pass.cpp b/test/containers/sequences/deque/deque.modifiers/insert_rvalue.pass.cpp
index e1cac32..0bde7d9 100644
--- a/test/containers/sequences/deque/deque.modifiers/insert_rvalue.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/insert_rvalue.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
diff --git a/test/containers/sequences/deque/deque.modifiers/insert_size_value.pass.cpp b/test/containers/sequences/deque/deque.modifiers/insert_size_value.pass.cpp
index 71129bf..7b77861 100644
--- a/test/containers/sequences/deque/deque.modifiers/insert_size_value.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/insert_size_value.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.modifiers/insert_value.pass.cpp b/test/containers/sequences/deque/deque.modifiers/insert_value.pass.cpp
index 87be595..97827c1 100644
--- a/test/containers/sequences/deque/deque.modifiers/insert_value.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/insert_value.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.modifiers/pop_back.pass.cpp b/test/containers/sequences/deque/deque.modifiers/pop_back.pass.cpp
index 51812cf..e642f71 100644
--- a/test/containers/sequences/deque/deque.modifiers/pop_back.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/pop_back.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.modifiers/pop_front.pass.cpp b/test/containers/sequences/deque/deque.modifiers/pop_front.pass.cpp
index 17597ab..e27edf5 100644
--- a/test/containers/sequences/deque/deque.modifiers/pop_front.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/pop_front.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.modifiers/push_back.pass.cpp b/test/containers/sequences/deque/deque.modifiers/push_back.pass.cpp
index cb7155a..444ab9b 100644
--- a/test/containers/sequences/deque/deque.modifiers/push_back.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/push_back.pass.cpp
@@ -16,7 +16,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.modifiers/push_back_rvalue.pass.cpp b/test/containers/sequences/deque/deque.modifiers/push_back_rvalue.pass.cpp
index c60fdfc..d6c4439 100644
--- a/test/containers/sequences/deque/deque.modifiers/push_back_rvalue.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/push_back_rvalue.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
diff --git a/test/containers/sequences/deque/deque.modifiers/push_front.pass.cpp b/test/containers/sequences/deque/deque.modifiers/push_front.pass.cpp
index e3b2d98..700edd3 100644
--- a/test/containers/sequences/deque/deque.modifiers/push_front.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/push_front.pass.cpp
@@ -14,7 +14,7 @@
 #include <deque>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.modifiers/push_front_rvalue.pass.cpp b/test/containers/sequences/deque/deque.modifiers/push_front_rvalue.pass.cpp
index 650a9b8..1670a44 100644
--- a/test/containers/sequences/deque/deque.modifiers/push_front_rvalue.pass.cpp
+++ b/test/containers/sequences/deque/deque.modifiers/push_front_rvalue.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
diff --git a/test/containers/sequences/deque/deque.special/copy.pass.cpp b/test/containers/sequences/deque/deque.special/copy.pass.cpp
index e8bf4da..7dfb4bc 100644
--- a/test/containers/sequences/deque/deque.special/copy.pass.cpp
+++ b/test/containers/sequences/deque/deque.special/copy.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.special/copy_backward.pass.cpp b/test/containers/sequences/deque/deque.special/copy_backward.pass.cpp
index 6168126..b484a86 100644
--- a/test/containers/sequences/deque/deque.special/copy_backward.pass.cpp
+++ b/test/containers/sequences/deque/deque.special/copy_backward.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.special/move.pass.cpp b/test/containers/sequences/deque/deque.special/move.pass.cpp
index 2da742f..b100ba4 100644
--- a/test/containers/sequences/deque/deque.special/move.pass.cpp
+++ b/test/containers/sequences/deque/deque.special/move.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.special/move_backward.pass.cpp b/test/containers/sequences/deque/deque.special/move_backward.pass.cpp
index 6fe094f..072d7a7 100644
--- a/test/containers/sequences/deque/deque.special/move_backward.pass.cpp
+++ b/test/containers/sequences/deque/deque.special/move_backward.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/deque.special/swap.pass.cpp b/test/containers/sequences/deque/deque.special/swap.pass.cpp
index d4da735..035bcea 100644
--- a/test/containers/sequences/deque/deque.special/swap.pass.cpp
+++ b/test/containers/sequences/deque/deque.special/swap.pass.cpp
@@ -15,7 +15,7 @@
 #include <deque>
 #include <cassert>
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 C
diff --git a/test/containers/sequences/deque/iterators.pass.cpp b/test/containers/sequences/deque/iterators.pass.cpp
index a83a16b..9140e02 100644
--- a/test/containers/sequences/deque/iterators.pass.cpp
+++ b/test/containers/sequences/deque/iterators.pass.cpp
@@ -20,7 +20,7 @@
 #include <iterator>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/deque/types.pass.cpp b/test/containers/sequences/deque/types.pass.cpp
index 9e70299..893e8db 100644
--- a/test/containers/sequences/deque/types.pass.cpp
+++ b/test/containers/sequences/deque/types.pass.cpp
@@ -35,7 +35,8 @@
 
 #include "../../test_allocator.h"
 #include "../../Copyable.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
+#include "powerpc-darwin.h"
 
 template <class T, class Allocator>
 void
@@ -82,7 +83,11 @@ int main()
         static_assert((std::is_same<C::const_reference, const C::value_type&>::value), "");
         static_assert((std::is_same<C::pointer, min_pointer<C::value_type>>::value), "");
         static_assert((std::is_same<C::const_pointer, min_pointer<const C::value_type>>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+        static_assert(sizeof(C::size_type) == sizeof(std::size_t), "");
+#else
         static_assert((std::is_same<C::size_type, std::size_t>::value), "");
+#endif
         static_assert((std::is_same<C::difference_type, std::ptrdiff_t>::value), "");
     }
 #endif
diff --git a/test/containers/sequences/forwardlist/forwardlist.access/front.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.access/front.pass.cpp
index 9a201aa..2ec9b87 100644
--- a/test/containers/sequences/forwardlist/forwardlist.access/front.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.access/front.pass.cpp
@@ -16,7 +16,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/alloc.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/alloc.pass.cpp
index 3183287..07a8e22 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/alloc.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/alloc.pass.cpp
@@ -16,7 +16,7 @@
 
 #include "../../../test_allocator.h"
 #include "../../../NotConstructible.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/assign_copy.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/assign_copy.pass.cpp
index 0379e47..0de0d99 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/assign_copy.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/assign_copy.pass.cpp
@@ -16,7 +16,7 @@
 #include <iterator>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp
index 088ed6d..e0382a1 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp
index 480350b..ee41301 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp
@@ -17,7 +17,7 @@
 
 #include "../../../test_allocator.h"
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp
index 5efe79f..551908f 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/assign_range.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/assign_range.pass.cpp
index ccbd7ce..fb3765d 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/assign_range.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/assign_range.pass.cpp
@@ -17,7 +17,7 @@
 #include <iterator>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/assign_size_value.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/assign_size_value.pass.cpp
index 7e7dbb6..ea53e1c 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/assign_size_value.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/assign_size_value.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/copy.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/copy.pass.cpp
index 0c3f162..0759418 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/copy.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/copy.pass.cpp
@@ -16,7 +16,7 @@
 #include <iterator>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/copy_alloc.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/copy_alloc.pass.cpp
index 7649679..9ff8215 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/copy_alloc.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/copy_alloc.pass.cpp
@@ -16,7 +16,7 @@
 #include <iterator>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/default.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/default.pass.cpp
index aa00236..dcc438c 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/default.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/default.pass.cpp
@@ -14,7 +14,7 @@
 #include <forward_list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp
index 987185d..5b31c4d 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp
@@ -14,7 +14,7 @@
 #include <forward_list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp
index 4b62a42..e6e2f12 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp
index 01b1259..41de1eb 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp
@@ -17,7 +17,7 @@
 
 #include "../../../test_allocator.h"
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp
index b659e88..c43b3c1 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp
@@ -17,7 +17,7 @@
 
 #include "../../../test_allocator.h"
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/range.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/range.pass.cpp
index 57d3450..7639524 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/range.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/range.pass.cpp
@@ -17,7 +17,7 @@
 #include <iterator>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/range_alloc.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/range_alloc.pass.cpp
index 8f3b39a..d0810f9 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/range_alloc.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/range_alloc.pass.cpp
@@ -19,7 +19,7 @@
 
 #include "../../../test_allocator.h"
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp
index fb71b31..1bebcd4 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp
@@ -16,7 +16,7 @@
 #include <cassert>
 
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class T, class Allocator>
 void check_allocator(unsigned n, Allocator const &alloc = Allocator())
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/size_value.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/size_value.pass.cpp
index 4981d7e..05ab98b 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/size_value.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/size_value.pass.cpp
@@ -14,7 +14,7 @@
 #include <forward_list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.cons/size_value_alloc.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.cons/size_value_alloc.pass.cpp
index da4e80d..6d92c68 100644
--- a/test/containers/sequences/forwardlist/forwardlist.cons/size_value_alloc.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.cons/size_value_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.iter/before_begin.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.iter/before_begin.pass.cpp
index 1b89177..083cec2 100644
--- a/test/containers/sequences/forwardlist/forwardlist.iter/before_begin.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.iter/before_begin.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.iter/iterators.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.iter/iterators.pass.cpp
index 2e99514..02e17d7 100644
--- a/test/containers/sequences/forwardlist/forwardlist.iter/iterators.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.iter/iterators.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/clear.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/clear.pass.cpp
index 33db9e9..2739b49 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/clear.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/clear.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../NotConstructible.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp
index 680b5b8..e305c5b 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp
@@ -16,7 +16,7 @@
 #include <cassert>
 
 #include "../../../Emplaceable.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp
index f3c7f4a..c02337e 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../Emplaceable.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_many.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_many.pass.cpp
index f326593..bd9b153 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_many.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_many.pass.cpp
@@ -14,7 +14,7 @@
 #include <forward_list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_one.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_one.pass.cpp
index e36089e..4f51498 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_one.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_one.pass.cpp
@@ -14,7 +14,7 @@
 #include <forward_list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_const.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_const.pass.cpp
index b6785e7..ec650b6 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_const.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_const.pass.cpp
@@ -14,7 +14,7 @@
 #include <forward_list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp
index 7afaacd..4d30181 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp
@@ -14,7 +14,7 @@
 #include <forward_list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_range.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_range.pass.cpp
index dde6a13..103475f 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_range.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_range.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp
index 59f6770..4f0be52 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_size_value.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_size_value.pass.cpp
index 4297753..b2da2ec 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_size_value.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_size_value.pass.cpp
@@ -14,7 +14,7 @@
 #include <forward_list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp
index 0b73c7a..276f2c9 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_const.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_const.pass.cpp
index bcf2865..85958af 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_const.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_const.pass.cpp
@@ -14,7 +14,7 @@
 #include <forward_list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp
index f2e99e1..53181ec 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/resize_size.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/resize_size.pass.cpp
index e937280..2086136 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/resize_size.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/resize_size.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.modifiers/resize_size_value.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.modifiers/resize_size_value.pass.cpp
index 89775d1..d722b92 100644
--- a/test/containers/sequences/forwardlist/forwardlist.modifiers/resize_size_value.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.modifiers/resize_size_value.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/merge.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/merge.pass.cpp
index 280d92c..3b6f853 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/merge.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/merge.pass.cpp
@@ -15,7 +15,7 @@
 #include <iterator>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/merge_pred.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/merge_pred.pass.cpp
index 6d6c40e..7e873bd 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/merge_pred.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/merge_pred.pass.cpp
@@ -16,7 +16,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/remove.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/remove.pass.cpp
index 9874803..a15e786 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/remove.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/remove.pass.cpp
@@ -15,7 +15,7 @@
 #include <iterator>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/remove_if.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/remove_if.pass.cpp
index 93b8ad8..4c4e80c 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/remove_if.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/remove_if.pass.cpp
@@ -15,7 +15,7 @@
 #include <iterator>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 bool g(int i)
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/reverse.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/reverse.pass.cpp
index b707c19..9bf0d03 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/reverse.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/reverse.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(int N)
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/sort.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/sort.pass.cpp
index 9a8bd17..06e40c5 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/sort.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/sort.pass.cpp
@@ -17,7 +17,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(int N)
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/sort_pred.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/sort_pred.pass.cpp
index 8524439..8b6ca39 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/sort_pred.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/sort_pred.pass.cpp
@@ -18,7 +18,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(int N)
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_flist.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_flist.pass.cpp
index 0fee4a4..51da651 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_flist.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_flist.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 typedef int T;
 const T t1[] = {0, 1, 2, 3, 4, 5, 6, 7};
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_one.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_one.pass.cpp
index 6e75d49..296ffcd 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_one.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_one.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 typedef int T;
 const T t1[] = {0, 1, 2, 3, 4, 5, 6, 7};
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_range.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_range.pass.cpp
index 0c61280..90a1599 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_range.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/splice_after_range.pass.cpp
@@ -16,7 +16,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 typedef int T;
 const T t1[] = {0, 1, 2, 3, 4, 5, 6, 7};
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/unique.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/unique.pass.cpp
index 9c95dc9..25db6e6 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/unique.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/unique.pass.cpp
@@ -15,7 +15,7 @@
 #include <iterator>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.ops/unique_pred.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.ops/unique_pred.pass.cpp
index f956f27..b7dce20 100644
--- a/test/containers/sequences/forwardlist/forwardlist.ops/unique_pred.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.ops/unique_pred.pass.cpp
@@ -15,7 +15,7 @@
 #include <iterator>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 bool g(int x, int y)
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.spec/equal.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.spec/equal.pass.cpp
index 485d89e..ca673b5 100644
--- a/test/containers/sequences/forwardlist/forwardlist.spec/equal.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.spec/equal.pass.cpp
@@ -22,7 +22,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(int N, int M)
diff --git a/test/containers/sequences/forwardlist/forwardlist.spec/member_swap.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.spec/member_swap.pass.cpp
index da27cc9..9c3a546 100644
--- a/test/containers/sequences/forwardlist/forwardlist.spec/member_swap.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.spec/member_swap.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.spec/non_member_swap.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.spec/non_member_swap.pass.cpp
index 115a369..aa34ce9 100644
--- a/test/containers/sequences/forwardlist/forwardlist.spec/non_member_swap.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.spec/non_member_swap.pass.cpp
@@ -16,7 +16,7 @@
 #include <cassert>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/forwardlist.spec/relational.pass.cpp b/test/containers/sequences/forwardlist/forwardlist.spec/relational.pass.cpp
index 7823693..42e245d 100644
--- a/test/containers/sequences/forwardlist/forwardlist.spec/relational.pass.cpp
+++ b/test/containers/sequences/forwardlist/forwardlist.spec/relational.pass.cpp
@@ -30,7 +30,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(int N, int M)
diff --git a/test/containers/sequences/forwardlist/max_size.pass.cpp b/test/containers/sequences/forwardlist/max_size.pass.cpp
index 96883b5..be7ebaf 100644
--- a/test/containers/sequences/forwardlist/max_size.pass.cpp
+++ b/test/containers/sequences/forwardlist/max_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <forward_list>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/forwardlist/types.pass.cpp b/test/containers/sequences/forwardlist/types.pass.cpp
index d812f8a..13c379f 100644
--- a/test/containers/sequences/forwardlist/types.pass.cpp
+++ b/test/containers/sequences/forwardlist/types.pass.cpp
@@ -28,7 +28,8 @@
 #include <forward_list>
 #include <type_traits>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
+#include "powerpc-darwin.h"
 
 int main()
 {
@@ -38,7 +39,11 @@ int main()
     static_assert((std::is_same<std::forward_list<char>::const_reference, const char&>::value), "");
     static_assert((std::is_same<std::forward_list<char>::pointer, char*>::value), "");
     static_assert((std::is_same<std::forward_list<char>::const_pointer, const char*>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+    static_assert(sizeof(std::forward_list<char>::size_type) == sizeof(std::size_t), "");
+#else
     static_assert((std::is_same<std::forward_list<char>::size_type, std::size_t>::value), "");
+#endif
     static_assert((std::is_same<std::forward_list<char>::difference_type, std::ptrdiff_t>::value), "");
 #if __cplusplus >= 201103L
     static_assert((std::is_same<std::forward_list<char, min_allocator<char>>::value_type, char>::value), "");
@@ -47,7 +52,11 @@ int main()
     static_assert((std::is_same<std::forward_list<char, min_allocator<char>>::const_reference, const char&>::value), "");
     static_assert((std::is_same<std::forward_list<char, min_allocator<char>>::pointer, min_pointer<char>>::value), "");
     static_assert((std::is_same<std::forward_list<char, min_allocator<char>>::const_pointer, min_pointer<const char>>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+    static_assert(sizeof(std::forward_list<char, min_allocator<char>>::size_type) == sizeof(std::size_t), "");
+#else
     static_assert((std::is_same<std::forward_list<char, min_allocator<char>>::size_type, std::size_t>::value), "");
+#endif
     static_assert((std::is_same<std::forward_list<char, min_allocator<char>>::difference_type, std::ptrdiff_t>::value), "");
 #endif
 }
diff --git a/test/containers/sequences/list/db_back.pass.cpp b/test/containers/sequences/list/db_back.pass.cpp
index 22a7eac..b16c0e9 100644
--- a/test/containers/sequences/list/db_back.pass.cpp
+++ b/test/containers/sequences/list/db_back.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/db_cback.pass.cpp b/test/containers/sequences/list/db_cback.pass.cpp
index 613b4f1..ba3977e 100644
--- a/test/containers/sequences/list/db_cback.pass.cpp
+++ b/test/containers/sequences/list/db_cback.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/db_cfront.pass.cpp b/test/containers/sequences/list/db_cfront.pass.cpp
index 2646fe1..d42290c 100644
--- a/test/containers/sequences/list/db_cfront.pass.cpp
+++ b/test/containers/sequences/list/db_cfront.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/db_front.pass.cpp b/test/containers/sequences/list/db_front.pass.cpp
index f7c3dfc..037b160 100644
--- a/test/containers/sequences/list/db_front.pass.cpp
+++ b/test/containers/sequences/list/db_front.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/db_iterators_6.pass.cpp b/test/containers/sequences/list/db_iterators_6.pass.cpp
index 9528d75..a5b8020 100644
--- a/test/containers/sequences/list/db_iterators_6.pass.cpp
+++ b/test/containers/sequences/list/db_iterators_6.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/db_iterators_7.pass.cpp b/test/containers/sequences/list/db_iterators_7.pass.cpp
index 795ffa7..76a491b 100644
--- a/test/containers/sequences/list/db_iterators_7.pass.cpp
+++ b/test/containers/sequences/list/db_iterators_7.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/db_iterators_8.pass.cpp b/test/containers/sequences/list/db_iterators_8.pass.cpp
index 2c34723..1d1ee23 100644
--- a/test/containers/sequences/list/db_iterators_8.pass.cpp
+++ b/test/containers/sequences/list/db_iterators_8.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/iterators.pass.cpp b/test/containers/sequences/list/iterators.pass.cpp
index 9f6a51b..a843334 100644
--- a/test/containers/sequences/list/iterators.pass.cpp
+++ b/test/containers/sequences/list/iterators.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 struct A
 {
diff --git a/test/containers/sequences/list/list.capacity/resize_size.pass.cpp b/test/containers/sequences/list/list.capacity/resize_size.pass.cpp
index d5135ee..7f0ebc9 100644
--- a/test/containers/sequences/list/list.capacity/resize_size.pass.cpp
+++ b/test/containers/sequences/list/list.capacity/resize_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.capacity/resize_size_value.pass.cpp b/test/containers/sequences/list/list.capacity/resize_size_value.pass.cpp
index dbe2c3f..ab171d5 100644
--- a/test/containers/sequences/list/list.capacity/resize_size_value.pass.cpp
+++ b/test/containers/sequences/list/list.capacity/resize_size_value.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/assign_copy.pass.cpp b/test/containers/sequences/list/list.cons/assign_copy.pass.cpp
index 422436a..6426e01 100644
--- a/test/containers/sequences/list/list.cons/assign_copy.pass.cpp
+++ b/test/containers/sequences/list/list.cons/assign_copy.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp b/test/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp
index e438f40..24bd140 100644
--- a/test/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp
+++ b/test/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/assign_move.pass.cpp b/test/containers/sequences/list/list.cons/assign_move.pass.cpp
index da788dd..3bcd824 100644
--- a/test/containers/sequences/list/list.cons/assign_move.pass.cpp
+++ b/test/containers/sequences/list/list.cons/assign_move.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../MoveOnly.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/copy.pass.cpp b/test/containers/sequences/list/list.cons/copy.pass.cpp
index b490eba..0d093bd 100644
--- a/test/containers/sequences/list/list.cons/copy.pass.cpp
+++ b/test/containers/sequences/list/list.cons/copy.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../DefaultOnly.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/copy_alloc.pass.cpp b/test/containers/sequences/list/list.cons/copy_alloc.pass.cpp
index 30eb9ff..910021c 100644
--- a/test/containers/sequences/list/list.cons/copy_alloc.pass.cpp
+++ b/test/containers/sequences/list/list.cons/copy_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../DefaultOnly.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/default.pass.cpp b/test/containers/sequences/list/list.cons/default.pass.cpp
index a6e193c..e992dca 100644
--- a/test/containers/sequences/list/list.cons/default.pass.cpp
+++ b/test/containers/sequences/list/list.cons/default.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/default_stack_alloc.pass.cpp b/test/containers/sequences/list/list.cons/default_stack_alloc.pass.cpp
index ef42e52..9d9946b 100644
--- a/test/containers/sequences/list/list.cons/default_stack_alloc.pass.cpp
+++ b/test/containers/sequences/list/list.cons/default_stack_alloc.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/initializer_list.pass.cpp b/test/containers/sequences/list/list.cons/initializer_list.pass.cpp
index f862eed..3307017 100644
--- a/test/containers/sequences/list/list.cons/initializer_list.pass.cpp
+++ b/test/containers/sequences/list/list.cons/initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp b/test/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp
index 649610a..9720a3d 100644
--- a/test/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp
+++ b/test/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/input_iterator.pass.cpp b/test/containers/sequences/list/list.cons/input_iterator.pass.cpp
index b5d8dcb..09eae8a 100644
--- a/test/containers/sequences/list/list.cons/input_iterator.pass.cpp
+++ b/test/containers/sequences/list/list.cons/input_iterator.pass.cpp
@@ -16,7 +16,7 @@
 #include <cassert>
 #include "test_iterators.h"
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/move.pass.cpp b/test/containers/sequences/list/list.cons/move.pass.cpp
index f1c5a98..ced38b4 100644
--- a/test/containers/sequences/list/list.cons/move.pass.cpp
+++ b/test/containers/sequences/list/list.cons/move.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../MoveOnly.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/move_alloc.pass.cpp b/test/containers/sequences/list/list.cons/move_alloc.pass.cpp
index 94711d4..78e1445 100644
--- a/test/containers/sequences/list/list.cons/move_alloc.pass.cpp
+++ b/test/containers/sequences/list/list.cons/move_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../MoveOnly.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp b/test/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp
index f090043..7b7b8a3 100644
--- a/test/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp
+++ b/test/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp
@@ -13,7 +13,7 @@
 
 #include <list>
 #include <cassert>
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.cons/size_type.pass.cpp b/test/containers/sequences/list/list.cons/size_type.pass.cpp
index 864b5ad..b72c9ca 100644
--- a/test/containers/sequences/list/list.cons/size_type.pass.cpp
+++ b/test/containers/sequences/list/list.cons/size_type.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../DefaultOnly.h"
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class T, class Allocator>
 void
diff --git a/test/containers/sequences/list/list.cons/size_value_alloc.pass.cpp b/test/containers/sequences/list/list.cons/size_value_alloc.pass.cpp
index 89cdf0e..e1d768e 100644
--- a/test/containers/sequences/list/list.cons/size_value_alloc.pass.cpp
+++ b/test/containers/sequences/list/list.cons/size_value_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../DefaultOnly.h"
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/clear.pass.cpp b/test/containers/sequences/list/list.modifiers/clear.pass.cpp
index 5bfab6f..38696b6 100644
--- a/test/containers/sequences/list/list.modifiers/clear.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/clear.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/emplace.pass.cpp b/test/containers/sequences/list/list.modifiers/emplace.pass.cpp
index 9f5edf5..6476d1d 100644
--- a/test/containers/sequences/list/list.modifiers/emplace.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/emplace.pass.cpp
@@ -18,7 +18,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 class A
 {
diff --git a/test/containers/sequences/list/list.modifiers/emplace_back.pass.cpp b/test/containers/sequences/list/list.modifiers/emplace_back.pass.cpp
index 71bc671..5983efc 100644
--- a/test/containers/sequences/list/list.modifiers/emplace_back.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/emplace_back.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 class A
 {
diff --git a/test/containers/sequences/list/list.modifiers/emplace_front.pass.cpp b/test/containers/sequences/list/list.modifiers/emplace_front.pass.cpp
index 2eee9da..e2e68e3 100644
--- a/test/containers/sequences/list/list.modifiers/emplace_front.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/emplace_front.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 class A
 {
diff --git a/test/containers/sequences/list/list.modifiers/erase_iter.pass.cpp b/test/containers/sequences/list/list.modifiers/erase_iter.pass.cpp
index 0c2e5a1..c1cc900 100644
--- a/test/containers/sequences/list/list.modifiers/erase_iter.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/erase_iter.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/erase_iter_db1.pass.cpp b/test/containers/sequences/list/list.modifiers/erase_iter_db1.pass.cpp
index d5fd044..18c15eb 100644
--- a/test/containers/sequences/list/list.modifiers/erase_iter_db1.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/erase_iter_db1.pass.cpp
@@ -20,7 +20,7 @@
 #include <cstdlib>
 #include <exception>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/erase_iter_db2.pass.cpp b/test/containers/sequences/list/list.modifiers/erase_iter_db2.pass.cpp
index df567aa..61ff840 100644
--- a/test/containers/sequences/list/list.modifiers/erase_iter_db2.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/erase_iter_db2.pass.cpp
@@ -20,7 +20,7 @@
 #include <cstdlib>
 #include <exception>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/erase_iter_iter.pass.cpp b/test/containers/sequences/list/list.modifiers/erase_iter_iter.pass.cpp
index e1a6e5a..bd3f66b 100644
--- a/test/containers/sequences/list/list.modifiers/erase_iter_iter.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/erase_iter_iter.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/erase_iter_iter_db1.pass.cpp b/test/containers/sequences/list/list.modifiers/erase_iter_iter_db1.pass.cpp
index 18b825b..71ad497 100644
--- a/test/containers/sequences/list/list.modifiers/erase_iter_iter_db1.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/erase_iter_iter_db1.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/erase_iter_iter_db2.pass.cpp b/test/containers/sequences/list/list.modifiers/erase_iter_iter_db2.pass.cpp
index 84fbf37..db76b4d 100644
--- a/test/containers/sequences/list/list.modifiers/erase_iter_iter_db2.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/erase_iter_iter_db2.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/erase_iter_iter_db3.pass.cpp b/test/containers/sequences/list/list.modifiers/erase_iter_iter_db3.pass.cpp
index 4bdee44..25c5c61 100644
--- a/test/containers/sequences/list/list.modifiers/erase_iter_iter_db3.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/erase_iter_iter_db3.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/erase_iter_iter_db4.pass.cpp b/test/containers/sequences/list/list.modifiers/erase_iter_iter_db4.pass.cpp
index 5b1d3e1..35a4ceb 100644
--- a/test/containers/sequences/list/list.modifiers/erase_iter_iter_db4.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/erase_iter_iter_db4.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp b/test/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp
index 9afb506..a82a269 100644
--- a/test/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/insert_iter_iter_iter.pass.cpp b/test/containers/sequences/list/list.modifiers/insert_iter_iter_iter.pass.cpp
index 9e23df3..625004b 100644
--- a/test/containers/sequences/list/list.modifiers/insert_iter_iter_iter.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/insert_iter_iter_iter.pass.cpp
@@ -20,7 +20,7 @@
 #include <cstdlib>
 #include <cassert>
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int throw_next = 0xFFFF;
 int count = 0;
diff --git a/test/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp b/test/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp
index e575753..27d0411 100644
--- a/test/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/insert_iter_size_value.pass.cpp b/test/containers/sequences/list/list.modifiers/insert_iter_size_value.pass.cpp
index 0de5a9f..ce2d386 100644
--- a/test/containers/sequences/list/list.modifiers/insert_iter_size_value.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/insert_iter_size_value.pass.cpp
@@ -19,7 +19,7 @@
 #include <cstdlib>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int throw_next = 0xFFFF;
 int count = 0;
diff --git a/test/containers/sequences/list/list.modifiers/insert_iter_value.pass.cpp b/test/containers/sequences/list/list.modifiers/insert_iter_value.pass.cpp
index bf9ed8b..1b097e3 100644
--- a/test/containers/sequences/list/list.modifiers/insert_iter_value.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/insert_iter_value.pass.cpp
@@ -19,7 +19,7 @@
 #include <cstdlib>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int throw_next = 0xFFFF;
 int count = 0;
diff --git a/test/containers/sequences/list/list.modifiers/pop_back.pass.cpp b/test/containers/sequences/list/list.modifiers/pop_back.pass.cpp
index a687b1b..3add851 100644
--- a/test/containers/sequences/list/list.modifiers/pop_back.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/pop_back.pass.cpp
@@ -18,7 +18,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/pop_front.pass.cpp b/test/containers/sequences/list/list.modifiers/pop_front.pass.cpp
index cc1462c..aec17cc 100644
--- a/test/containers/sequences/list/list.modifiers/pop_front.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/pop_front.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/push_back.pass.cpp b/test/containers/sequences/list/list.modifiers/push_back.pass.cpp
index 2022bb0..2638c54 100644
--- a/test/containers/sequences/list/list.modifiers/push_back.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/push_back.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp b/test/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp
index 3f0dddd..070db9e 100644
--- a/test/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/push_front.pass.cpp b/test/containers/sequences/list/list.modifiers/push_front.pass.cpp
index 7042829..b7f4feb 100644
--- a/test/containers/sequences/list/list.modifiers/push_front.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/push_front.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp b/test/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp
index e7976fa..8a31755 100644
--- a/test/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp
+++ b/test/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.ops/merge.pass.cpp b/test/containers/sequences/list/list.ops/merge.pass.cpp
index 9b8d2ad..d226ed5 100644
--- a/test/containers/sequences/list/list.ops/merge.pass.cpp
+++ b/test/containers/sequences/list/list.ops/merge.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.ops/merge_comp.pass.cpp b/test/containers/sequences/list/list.ops/merge_comp.pass.cpp
index b09e2dc..ce861a5 100644
--- a/test/containers/sequences/list/list.ops/merge_comp.pass.cpp
+++ b/test/containers/sequences/list/list.ops/merge_comp.pass.cpp
@@ -15,7 +15,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.ops/remove.pass.cpp b/test/containers/sequences/list/list.ops/remove.pass.cpp
index f17dfc8..76d878d 100644
--- a/test/containers/sequences/list/list.ops/remove.pass.cpp
+++ b/test/containers/sequences/list/list.ops/remove.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.ops/remove_if.pass.cpp b/test/containers/sequences/list/list.ops/remove_if.pass.cpp
index e636607..b45562a 100644
--- a/test/containers/sequences/list/list.ops/remove_if.pass.cpp
+++ b/test/containers/sequences/list/list.ops/remove_if.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include <functional>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 bool g(int i)
 {
diff --git a/test/containers/sequences/list/list.ops/reverse.pass.cpp b/test/containers/sequences/list/list.ops/reverse.pass.cpp
index 3eafeee..046453a 100644
--- a/test/containers/sequences/list/list.ops/reverse.pass.cpp
+++ b/test/containers/sequences/list/list.ops/reverse.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.ops/sort.pass.cpp b/test/containers/sequences/list/list.ops/sort.pass.cpp
index a79f0a6..1c11227 100644
--- a/test/containers/sequences/list/list.ops/sort.pass.cpp
+++ b/test/containers/sequences/list/list.ops/sort.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.ops/sort_comp.pass.cpp b/test/containers/sequences/list/list.ops/sort_comp.pass.cpp
index c107e1f..28125ab 100644
--- a/test/containers/sequences/list/list.ops/sort_comp.pass.cpp
+++ b/test/containers/sequences/list/list.ops/sort_comp.pass.cpp
@@ -15,7 +15,7 @@
 #include <functional>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.ops/splice_pos_list.pass.cpp b/test/containers/sequences/list/list.ops/splice_pos_list.pass.cpp
index 81916e0..354871c 100644
--- a/test/containers/sequences/list/list.ops/splice_pos_list.pass.cpp
+++ b/test/containers/sequences/list/list.ops/splice_pos_list.pass.cpp
@@ -18,7 +18,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.ops/splice_pos_list_iter.pass.cpp b/test/containers/sequences/list/list.ops/splice_pos_list_iter.pass.cpp
index f4c0489..5082c3f 100644
--- a/test/containers/sequences/list/list.ops/splice_pos_list_iter.pass.cpp
+++ b/test/containers/sequences/list/list.ops/splice_pos_list_iter.pass.cpp
@@ -18,7 +18,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.ops/splice_pos_list_iter_iter.pass.cpp b/test/containers/sequences/list/list.ops/splice_pos_list_iter_iter.pass.cpp
index 5745af5..fcc4acc 100644
--- a/test/containers/sequences/list/list.ops/splice_pos_list_iter_iter.pass.cpp
+++ b/test/containers/sequences/list/list.ops/splice_pos_list_iter_iter.pass.cpp
@@ -18,7 +18,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.ops/unique.pass.cpp b/test/containers/sequences/list/list.ops/unique.pass.cpp
index cfd9d03..48cad1d 100644
--- a/test/containers/sequences/list/list.ops/unique.pass.cpp
+++ b/test/containers/sequences/list/list.ops/unique.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.ops/unique_pred.pass.cpp b/test/containers/sequences/list/list.ops/unique_pred.pass.cpp
index a9687a9..f8935b8 100644
--- a/test/containers/sequences/list/list.ops/unique_pred.pass.cpp
+++ b/test/containers/sequences/list/list.ops/unique_pred.pass.cpp
@@ -14,7 +14,7 @@
 #include <list>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 bool g(int x, int y)
 {
diff --git a/test/containers/sequences/list/list.special/db_swap_1.pass.cpp b/test/containers/sequences/list/list.special/db_swap_1.pass.cpp
index e440f69..f717179 100644
--- a/test/containers/sequences/list/list.special/db_swap_1.pass.cpp
+++ b/test/containers/sequences/list/list.special/db_swap_1.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 
 #include <__debug>
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/list.special/swap.pass.cpp b/test/containers/sequences/list/list.special/swap.pass.cpp
index a8283fd..9f790cd 100644
--- a/test/containers/sequences/list/list.special/swap.pass.cpp
+++ b/test/containers/sequences/list/list.special/swap.pass.cpp
@@ -15,7 +15,7 @@
 #include <list>
 #include <cassert>
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/list/types.pass.cpp b/test/containers/sequences/list/types.pass.cpp
index 9fa3a05..95d7f50 100644
--- a/test/containers/sequences/list/types.pass.cpp
+++ b/test/containers/sequences/list/types.pass.cpp
@@ -25,7 +25,7 @@
 #include <list>
 #include <type_traits>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/assign_copy.pass.cpp b/test/containers/sequences/vector.bool/assign_copy.pass.cpp
index 7cf927b..e524e1a 100644
--- a/test/containers/sequences/vector.bool/assign_copy.pass.cpp
+++ b/test/containers/sequences/vector.bool/assign_copy.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/assign_initializer_list.pass.cpp b/test/containers/sequences/vector.bool/assign_initializer_list.pass.cpp
index 2cf9297..2925fbc 100644
--- a/test/containers/sequences/vector.bool/assign_initializer_list.pass.cpp
+++ b/test/containers/sequences/vector.bool/assign_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/assign_move.pass.cpp b/test/containers/sequences/vector.bool/assign_move.pass.cpp
index 5edd313..b3bb0f1 100644
--- a/test/containers/sequences/vector.bool/assign_move.pass.cpp
+++ b/test/containers/sequences/vector.bool/assign_move.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/capacity.pass.cpp b/test/containers/sequences/vector.bool/capacity.pass.cpp
index 87c9898..63bff25 100644
--- a/test/containers/sequences/vector.bool/capacity.pass.cpp
+++ b/test/containers/sequences/vector.bool/capacity.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/construct_default.pass.cpp b/test/containers/sequences/vector.bool/construct_default.pass.cpp
index fa396ab..f7ec5db 100644
--- a/test/containers/sequences/vector.bool/construct_default.pass.cpp
+++ b/test/containers/sequences/vector.bool/construct_default.pass.cpp
@@ -16,7 +16,7 @@
 #include <cassert>
 
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/vector.bool/construct_iter_iter.pass.cpp b/test/containers/sequences/vector.bool/construct_iter_iter.pass.cpp
index 3225d87..94e6801 100644
--- a/test/containers/sequences/vector.bool/construct_iter_iter.pass.cpp
+++ b/test/containers/sequences/vector.bool/construct_iter_iter.pass.cpp
@@ -16,7 +16,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C, class Iterator>
 void
diff --git a/test/containers/sequences/vector.bool/construct_iter_iter_alloc.pass.cpp b/test/containers/sequences/vector.bool/construct_iter_iter_alloc.pass.cpp
index 12f1cae..ea9d41d 100644
--- a/test/containers/sequences/vector.bool/construct_iter_iter_alloc.pass.cpp
+++ b/test/containers/sequences/vector.bool/construct_iter_iter_alloc.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C, class Iterator>
 void
diff --git a/test/containers/sequences/vector.bool/construct_size.pass.cpp b/test/containers/sequences/vector.bool/construct_size.pass.cpp
index aa4ca0e..65f2ed5 100644
--- a/test/containers/sequences/vector.bool/construct_size.pass.cpp
+++ b/test/containers/sequences/vector.bool/construct_size.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 #include "../../test_allocator.h"
 
 template <class C>
diff --git a/test/containers/sequences/vector.bool/construct_size_value.pass.cpp b/test/containers/sequences/vector.bool/construct_size_value.pass.cpp
index dc950a2..fc772f1 100644
--- a/test/containers/sequences/vector.bool/construct_size_value.pass.cpp
+++ b/test/containers/sequences/vector.bool/construct_size_value.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/vector.bool/construct_size_value_alloc.pass.cpp b/test/containers/sequences/vector.bool/construct_size_value_alloc.pass.cpp
index 5e0b22a..6cca948 100644
--- a/test/containers/sequences/vector.bool/construct_size_value_alloc.pass.cpp
+++ b/test/containers/sequences/vector.bool/construct_size_value_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/vector.bool/copy.pass.cpp b/test/containers/sequences/vector.bool/copy.pass.cpp
index f0e2c79..b9ce87c 100644
--- a/test/containers/sequences/vector.bool/copy.pass.cpp
+++ b/test/containers/sequences/vector.bool/copy.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/vector.bool/copy_alloc.pass.cpp b/test/containers/sequences/vector.bool/copy_alloc.pass.cpp
index 58e71dd..2b5cae6 100644
--- a/test/containers/sequences/vector.bool/copy_alloc.pass.cpp
+++ b/test/containers/sequences/vector.bool/copy_alloc.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/vector.bool/emplace.pass.cpp b/test/containers/sequences/vector.bool/emplace.pass.cpp
index c575440..f3fd1e9 100644
--- a/test/containers/sequences/vector.bool/emplace.pass.cpp
+++ b/test/containers/sequences/vector.bool/emplace.pass.cpp
@@ -14,7 +14,7 @@
 
 #include <vector>
 #include <cassert>
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/emplace_back.pass.cpp b/test/containers/sequences/vector.bool/emplace_back.pass.cpp
index 86e0d7a..57aa478 100644
--- a/test/containers/sequences/vector.bool/emplace_back.pass.cpp
+++ b/test/containers/sequences/vector.bool/emplace_back.pass.cpp
@@ -14,7 +14,7 @@
 
 #include <vector>
 #include <cassert>
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 
 int main()
diff --git a/test/containers/sequences/vector.bool/erase_iter.pass.cpp b/test/containers/sequences/vector.bool/erase_iter.pass.cpp
index 776b43e..cbf26dd 100644
--- a/test/containers/sequences/vector.bool/erase_iter.pass.cpp
+++ b/test/containers/sequences/vector.bool/erase_iter.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/erase_iter_iter.pass.cpp b/test/containers/sequences/vector.bool/erase_iter_iter.pass.cpp
index 8778c32..2c2c4cc 100644
--- a/test/containers/sequences/vector.bool/erase_iter_iter.pass.cpp
+++ b/test/containers/sequences/vector.bool/erase_iter_iter.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/initializer_list.pass.cpp b/test/containers/sequences/vector.bool/initializer_list.pass.cpp
index 7c1a5de..b9b4686 100644
--- a/test/containers/sequences/vector.bool/initializer_list.pass.cpp
+++ b/test/containers/sequences/vector.bool/initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/initializer_list_alloc.pass.cpp b/test/containers/sequences/vector.bool/initializer_list_alloc.pass.cpp
index 19b5b57..c86b644 100644
--- a/test/containers/sequences/vector.bool/initializer_list_alloc.pass.cpp
+++ b/test/containers/sequences/vector.bool/initializer_list_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/insert_iter_initializer_list.pass.cpp b/test/containers/sequences/vector.bool/insert_iter_initializer_list.pass.cpp
index 4865b28..c081cc8 100644
--- a/test/containers/sequences/vector.bool/insert_iter_initializer_list.pass.cpp
+++ b/test/containers/sequences/vector.bool/insert_iter_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/insert_iter_iter_iter.pass.cpp b/test/containers/sequences/vector.bool/insert_iter_iter_iter.pass.cpp
index 5099ebc..c49ef9b 100644
--- a/test/containers/sequences/vector.bool/insert_iter_iter_iter.pass.cpp
+++ b/test/containers/sequences/vector.bool/insert_iter_iter_iter.pass.cpp
@@ -16,7 +16,7 @@
 #include <vector>
 #include <cassert>
 #include "test_iterators.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/insert_iter_size_value.pass.cpp b/test/containers/sequences/vector.bool/insert_iter_size_value.pass.cpp
index 9d49816..f9cb65c 100644
--- a/test/containers/sequences/vector.bool/insert_iter_size_value.pass.cpp
+++ b/test/containers/sequences/vector.bool/insert_iter_size_value.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/insert_iter_value.pass.cpp b/test/containers/sequences/vector.bool/insert_iter_value.pass.cpp
index 37bdebc..1213985 100644
--- a/test/containers/sequences/vector.bool/insert_iter_value.pass.cpp
+++ b/test/containers/sequences/vector.bool/insert_iter_value.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/iterators.pass.cpp b/test/containers/sequences/vector.bool/iterators.pass.cpp
index 98f725e..b63f6a6 100644
--- a/test/containers/sequences/vector.bool/iterators.pass.cpp
+++ b/test/containers/sequences/vector.bool/iterators.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/move.pass.cpp b/test/containers/sequences/vector.bool/move.pass.cpp
index 49d8e23..1b3fe49 100644
--- a/test/containers/sequences/vector.bool/move.pass.cpp
+++ b/test/containers/sequences/vector.bool/move.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/move_alloc.pass.cpp b/test/containers/sequences/vector.bool/move_alloc.pass.cpp
index 2b890d7..7b157fb 100644
--- a/test/containers/sequences/vector.bool/move_alloc.pass.cpp
+++ b/test/containers/sequences/vector.bool/move_alloc.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/op_equal_initializer_list.pass.cpp b/test/containers/sequences/vector.bool/op_equal_initializer_list.pass.cpp
index 6f20177..ef3dc5d 100644
--- a/test/containers/sequences/vector.bool/op_equal_initializer_list.pass.cpp
+++ b/test/containers/sequences/vector.bool/op_equal_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/push_back.pass.cpp b/test/containers/sequences/vector.bool/push_back.pass.cpp
index 21b3907..c6b0fbf 100644
--- a/test/containers/sequences/vector.bool/push_back.pass.cpp
+++ b/test/containers/sequences/vector.bool/push_back.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/reserve.pass.cpp b/test/containers/sequences/vector.bool/reserve.pass.cpp
index 4e7fbef..be717a3 100644
--- a/test/containers/sequences/vector.bool/reserve.pass.cpp
+++ b/test/containers/sequences/vector.bool/reserve.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/resize_size.pass.cpp b/test/containers/sequences/vector.bool/resize_size.pass.cpp
index 1703245..77d54e5 100644
--- a/test/containers/sequences/vector.bool/resize_size.pass.cpp
+++ b/test/containers/sequences/vector.bool/resize_size.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/resize_size_value.pass.cpp b/test/containers/sequences/vector.bool/resize_size_value.pass.cpp
index 1413f5c..8cecf44 100644
--- a/test/containers/sequences/vector.bool/resize_size_value.pass.cpp
+++ b/test/containers/sequences/vector.bool/resize_size_value.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/shrink_to_fit.pass.cpp b/test/containers/sequences/vector.bool/shrink_to_fit.pass.cpp
index 0b4cf49..1f9fcac 100644
--- a/test/containers/sequences/vector.bool/shrink_to_fit.pass.cpp
+++ b/test/containers/sequences/vector.bool/shrink_to_fit.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/swap.pass.cpp b/test/containers/sequences/vector.bool/swap.pass.cpp
index ce5a10e..f30e347 100644
--- a/test/containers/sequences/vector.bool/swap.pass.cpp
+++ b/test/containers/sequences/vector.bool/swap.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector.bool/types.pass.cpp b/test/containers/sequences/vector.bool/types.pass.cpp
index ef33d04..8cc9cb9 100644
--- a/test/containers/sequences/vector.bool/types.pass.cpp
+++ b/test/containers/sequences/vector.bool/types.pass.cpp
@@ -33,7 +33,7 @@
 
 #include "../../test_allocator.h"
 #include "../../Copyable.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class Allocator>
 void
diff --git a/test/containers/sequences/vector.bool/vector_bool.pass.cpp b/test/containers/sequences/vector.bool/vector_bool.pass.cpp
index e2bc48a..ea2262c 100644
--- a/test/containers/sequences/vector.bool/vector_bool.pass.cpp
+++ b/test/containers/sequences/vector.bool/vector_bool.pass.cpp
@@ -22,7 +22,7 @@
 #include <cassert>
 #include <type_traits>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_back.pass.cpp b/test/containers/sequences/vector/db_back.pass.cpp
index 0544452..05f3d07 100644
--- a/test/containers/sequences/vector/db_back.pass.cpp
+++ b/test/containers/sequences/vector/db_back.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_cback.pass.cpp b/test/containers/sequences/vector/db_cback.pass.cpp
index b8fd032..5eb1a35 100644
--- a/test/containers/sequences/vector/db_cback.pass.cpp
+++ b/test/containers/sequences/vector/db_cback.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_cfront.pass.cpp b/test/containers/sequences/vector/db_cfront.pass.cpp
index 36ba0dd..5e54da1 100644
--- a/test/containers/sequences/vector/db_cfront.pass.cpp
+++ b/test/containers/sequences/vector/db_cfront.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_cindex.pass.cpp b/test/containers/sequences/vector/db_cindex.pass.cpp
index 18ef2cf..133aa56 100644
--- a/test/containers/sequences/vector/db_cindex.pass.cpp
+++ b/test/containers/sequences/vector/db_cindex.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_front.pass.cpp b/test/containers/sequences/vector/db_front.pass.cpp
index 97cdb24..388058f 100644
--- a/test/containers/sequences/vector/db_front.pass.cpp
+++ b/test/containers/sequences/vector/db_front.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_index.pass.cpp b/test/containers/sequences/vector/db_index.pass.cpp
index 785263b..1daf076 100644
--- a/test/containers/sequences/vector/db_index.pass.cpp
+++ b/test/containers/sequences/vector/db_index.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_iterators_2.pass.cpp b/test/containers/sequences/vector/db_iterators_2.pass.cpp
index 2670002..2d43843 100644
--- a/test/containers/sequences/vector/db_iterators_2.pass.cpp
+++ b/test/containers/sequences/vector/db_iterators_2.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_iterators_3.pass.cpp b/test/containers/sequences/vector/db_iterators_3.pass.cpp
index d47e3d4..051d66c 100644
--- a/test/containers/sequences/vector/db_iterators_3.pass.cpp
+++ b/test/containers/sequences/vector/db_iterators_3.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_iterators_4.pass.cpp b/test/containers/sequences/vector/db_iterators_4.pass.cpp
index bba222e..4c2aa62 100644
--- a/test/containers/sequences/vector/db_iterators_4.pass.cpp
+++ b/test/containers/sequences/vector/db_iterators_4.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_iterators_5.pass.cpp b/test/containers/sequences/vector/db_iterators_5.pass.cpp
index c5d96c5..1b10904 100644
--- a/test/containers/sequences/vector/db_iterators_5.pass.cpp
+++ b/test/containers/sequences/vector/db_iterators_5.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_iterators_6.pass.cpp b/test/containers/sequences/vector/db_iterators_6.pass.cpp
index d33f29d..424bc93 100644
--- a/test/containers/sequences/vector/db_iterators_6.pass.cpp
+++ b/test/containers/sequences/vector/db_iterators_6.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_iterators_7.pass.cpp b/test/containers/sequences/vector/db_iterators_7.pass.cpp
index 25555b4..72cdb10 100644
--- a/test/containers/sequences/vector/db_iterators_7.pass.cpp
+++ b/test/containers/sequences/vector/db_iterators_7.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/db_iterators_8.pass.cpp b/test/containers/sequences/vector/db_iterators_8.pass.cpp
index d891630..7b89853 100644
--- a/test/containers/sequences/vector/db_iterators_8.pass.cpp
+++ b/test/containers/sequences/vector/db_iterators_8.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/iterators.pass.cpp b/test/containers/sequences/vector/iterators.pass.cpp
index 4ee16e9..82de665 100644
--- a/test/containers/sequences/vector/iterators.pass.cpp
+++ b/test/containers/sequences/vector/iterators.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 #include <iterator>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 struct A
 {
diff --git a/test/containers/sequences/vector/types.pass.cpp b/test/containers/sequences/vector/types.pass.cpp
index 5e1dc9b..c064587 100644
--- a/test/containers/sequences/vector/types.pass.cpp
+++ b/test/containers/sequences/vector/types.pass.cpp
@@ -35,7 +35,7 @@
 
 #include "../../test_allocator.h"
 #include "../../Copyable.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class T, class Allocator>
 void
diff --git a/test/containers/sequences/vector/vector.capacity/capacity.pass.cpp b/test/containers/sequences/vector/vector.capacity/capacity.pass.cpp
index 861ec9a..a22c6da 100644
--- a/test/containers/sequences/vector/vector.capacity/capacity.pass.cpp
+++ b/test/containers/sequences/vector/vector.capacity/capacity.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.capacity/reserve.pass.cpp b/test/containers/sequences/vector/vector.capacity/reserve.pass.cpp
index 4b91711..2914af9 100644
--- a/test/containers/sequences/vector/vector.capacity/reserve.pass.cpp
+++ b/test/containers/sequences/vector/vector.capacity/reserve.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.capacity/resize_size.pass.cpp b/test/containers/sequences/vector/vector.capacity/resize_size.pass.cpp
index 7a3389f..e415cee 100644
--- a/test/containers/sequences/vector/vector.capacity/resize_size.pass.cpp
+++ b/test/containers/sequences/vector/vector.capacity/resize_size.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../stack_allocator.h"
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.capacity/resize_size_value.pass.cpp b/test/containers/sequences/vector/vector.capacity/resize_size_value.pass.cpp
index fb26761..49f373a 100644
--- a/test/containers/sequences/vector/vector.capacity/resize_size_value.pass.cpp
+++ b/test/containers/sequences/vector/vector.capacity/resize_size_value.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.capacity/shrink_to_fit.pass.cpp b/test/containers/sequences/vector/vector.capacity/shrink_to_fit.pass.cpp
index 7a8d0c7..6b0cce4 100644
--- a/test/containers/sequences/vector/vector.capacity/shrink_to_fit.pass.cpp
+++ b/test/containers/sequences/vector/vector.capacity/shrink_to_fit.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.capacity/swap.pass.cpp b/test/containers/sequences/vector/vector.capacity/swap.pass.cpp
index 8152802..46d8403 100644
--- a/test/containers/sequences/vector/vector.capacity/swap.pass.cpp
+++ b/test/containers/sequences/vector/vector.capacity/swap.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.cons/assign_copy.pass.cpp b/test/containers/sequences/vector/vector.cons/assign_copy.pass.cpp
index 9623d0f..1ad4bfc 100644
--- a/test/containers/sequences/vector/vector.cons/assign_copy.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/assign_copy.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.cons/assign_initializer_list.pass.cpp b/test/containers/sequences/vector/vector.cons/assign_initializer_list.pass.cpp
index 13c3e49..c0dafce 100644
--- a/test/containers/sequences/vector/vector.cons/assign_initializer_list.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/assign_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.cons/assign_move.pass.cpp b/test/containers/sequences/vector/vector.cons/assign_move.pass.cpp
index 1a29db9..3355254 100644
--- a/test/containers/sequences/vector/vector.cons/assign_move.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/assign_move.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../MoveOnly.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.cons/construct_default.pass.cpp b/test/containers/sequences/vector/vector.cons/construct_default.pass.cpp
index ec66c0d..7321f93 100644
--- a/test/containers/sequences/vector/vector.cons/construct_default.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/construct_default.pass.cpp
@@ -17,7 +17,7 @@
 #include "../../../test_allocator.h"
 #include "../../../NotConstructible.h"
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/vector/vector.cons/construct_iter_iter.pass.cpp b/test/containers/sequences/vector/vector.cons/construct_iter_iter.pass.cpp
index 6841319..8dde17f 100644
--- a/test/containers/sequences/vector/vector.cons/construct_iter_iter.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/construct_iter_iter.pass.cpp
@@ -16,7 +16,7 @@
 
 #include "test_iterators.h"
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C, class Iterator>
 void
diff --git a/test/containers/sequences/vector/vector.cons/construct_iter_iter_alloc.pass.cpp b/test/containers/sequences/vector/vector.cons/construct_iter_iter_alloc.pass.cpp
index afc8ea5..9edc10c 100644
--- a/test/containers/sequences/vector/vector.cons/construct_iter_iter_alloc.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/construct_iter_iter_alloc.pass.cpp
@@ -17,7 +17,7 @@
 
 #include "test_iterators.h"
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C, class Iterator, class A>
 void
diff --git a/test/containers/sequences/vector/vector.cons/construct_size.pass.cpp b/test/containers/sequences/vector/vector.cons/construct_size.pass.cpp
index 19d2760..800c732 100644
--- a/test/containers/sequences/vector/vector.cons/construct_size.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/construct_size.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../DefaultOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 #include "../../../test_allocator.h"
 
 template <class C>
diff --git a/test/containers/sequences/vector/vector.cons/construct_size_value.pass.cpp b/test/containers/sequences/vector/vector.cons/construct_size_value.pass.cpp
index 35adaed..6a52d52 100644
--- a/test/containers/sequences/vector/vector.cons/construct_size_value.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/construct_size_value.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/vector/vector.cons/construct_size_value_alloc.pass.cpp b/test/containers/sequences/vector/vector.cons/construct_size_value_alloc.pass.cpp
index 27da426..5653521 100644
--- a/test/containers/sequences/vector/vector.cons/construct_size_value_alloc.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/construct_size_value_alloc.pass.cpp
@@ -13,7 +13,7 @@
 
 #include <vector>
 #include <cassert>
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/vector/vector.cons/copy.pass.cpp b/test/containers/sequences/vector/vector.cons/copy.pass.cpp
index 34008ae..78e7fac 100644
--- a/test/containers/sequences/vector/vector.cons/copy.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/copy.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/vector/vector.cons/copy_alloc.pass.cpp b/test/containers/sequences/vector/vector.cons/copy_alloc.pass.cpp
index 22fca55..b0e07db 100644
--- a/test/containers/sequences/vector/vector.cons/copy_alloc.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/copy_alloc.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void
diff --git a/test/containers/sequences/vector/vector.cons/initializer_list.pass.cpp b/test/containers/sequences/vector/vector.cons/initializer_list.pass.cpp
index 938c036..f231fcf 100644
--- a/test/containers/sequences/vector/vector.cons/initializer_list.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/initializer_list.pass.cpp
@@ -13,7 +13,7 @@
 
 #include <vector>
 #include <cassert>
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.cons/initializer_list_alloc.pass.cpp b/test/containers/sequences/vector/vector.cons/initializer_list_alloc.pass.cpp
index 12d27c6..d449f2a 100644
--- a/test/containers/sequences/vector/vector.cons/initializer_list_alloc.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/initializer_list_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.cons/move.pass.cpp b/test/containers/sequences/vector/vector.cons/move.pass.cpp
index 0514f31..6b9be7b 100644
--- a/test/containers/sequences/vector/vector.cons/move.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/move.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../MoveOnly.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.cons/move_alloc.pass.cpp b/test/containers/sequences/vector/vector.cons/move_alloc.pass.cpp
index 2f590dc..2640593 100644
--- a/test/containers/sequences/vector/vector.cons/move_alloc.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/move_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../MoveOnly.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.cons/op_equal_initializer_list.pass.cpp b/test/containers/sequences/vector/vector.cons/op_equal_initializer_list.pass.cpp
index 916ddaa..13ec845 100644
--- a/test/containers/sequences/vector/vector.cons/op_equal_initializer_list.pass.cpp
+++ b/test/containers/sequences/vector/vector.cons/op_equal_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.data/data.pass.cpp b/test/containers/sequences/vector/vector.data/data.pass.cpp
index 9ae3243..4bda599 100644
--- a/test/containers/sequences/vector/vector.data/data.pass.cpp
+++ b/test/containers/sequences/vector/vector.data/data.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.data/data_const.pass.cpp b/test/containers/sequences/vector/vector.data/data_const.pass.cpp
index 77e8b83..7cb64f8 100644
--- a/test/containers/sequences/vector/vector.data/data_const.pass.cpp
+++ b/test/containers/sequences/vector/vector.data/data_const.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/emplace.pass.cpp b/test/containers/sequences/vector/vector.modifiers/emplace.pass.cpp
index 7cca940..37298a5 100644
--- a/test/containers/sequences/vector/vector.modifiers/emplace.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/emplace.pass.cpp
@@ -18,7 +18,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
diff --git a/test/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp b/test/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp
index 1d024d4..a399433 100644
--- a/test/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
diff --git a/test/containers/sequences/vector/vector.modifiers/emplace_extra.pass.cpp b/test/containers/sequences/vector/vector.modifiers/emplace_extra.pass.cpp
index d703207..04ff228 100644
--- a/test/containers/sequences/vector/vector.modifiers/emplace_extra.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/emplace_extra.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/erase_iter.pass.cpp b/test/containers/sequences/vector/vector.modifiers/erase_iter.pass.cpp
index 6fcd189..fb9d808 100644
--- a/test/containers/sequences/vector/vector.modifiers/erase_iter.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/erase_iter.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/erase_iter_db1.pass.cpp b/test/containers/sequences/vector/vector.modifiers/erase_iter_db1.pass.cpp
index bd20844..0478d24 100644
--- a/test/containers/sequences/vector/vector.modifiers/erase_iter_db1.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/erase_iter_db1.pass.cpp
@@ -20,7 +20,7 @@
 #include <cstdlib>
 #include <exception>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/erase_iter_db2.pass.cpp b/test/containers/sequences/vector/vector.modifiers/erase_iter_db2.pass.cpp
index bbad13b..c394f19 100644
--- a/test/containers/sequences/vector/vector.modifiers/erase_iter_db2.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/erase_iter_db2.pass.cpp
@@ -20,7 +20,7 @@
 #include <cstdlib>
 #include <exception>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/erase_iter_iter.pass.cpp b/test/containers/sequences/vector/vector.modifiers/erase_iter_iter.pass.cpp
index 8a382ed..e82d3a0 100644
--- a/test/containers/sequences/vector/vector.modifiers/erase_iter_iter.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/erase_iter_iter.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db1.pass.cpp b/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db1.pass.cpp
index 395d97b..af6d0f7 100644
--- a/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db1.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db1.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db2.pass.cpp b/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db2.pass.cpp
index 1f87c80..eee2c66 100644
--- a/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db2.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db2.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db3.pass.cpp b/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db3.pass.cpp
index ab9cc37..505067d 100644
--- a/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db3.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db3.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db4.pass.cpp b/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db4.pass.cpp
index 141598e..c7e4131 100644
--- a/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db4.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/erase_iter_iter_db4.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/insert_iter_initializer_list.pass.cpp b/test/containers/sequences/vector/vector.modifiers/insert_iter_initializer_list.pass.cpp
index caba784..386a4f6 100644
--- a/test/containers/sequences/vector/vector.modifiers/insert_iter_initializer_list.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/insert_iter_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/insert_iter_iter_iter.pass.cpp b/test/containers/sequences/vector/vector.modifiers/insert_iter_iter_iter.pass.cpp
index 41566a8..97255b0 100644
--- a/test/containers/sequences/vector/vector.modifiers/insert_iter_iter_iter.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/insert_iter_iter_iter.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 #include "../../../stack_allocator.h"
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/insert_iter_rvalue.pass.cpp b/test/containers/sequences/vector/vector.modifiers/insert_iter_rvalue.pass.cpp
index 2f4b8e8..7ceb933 100644
--- a/test/containers/sequences/vector/vector.modifiers/insert_iter_rvalue.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/insert_iter_rvalue.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 #include "../../../stack_allocator.h"
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/insert_iter_size_value.pass.cpp b/test/containers/sequences/vector/vector.modifiers/insert_iter_size_value.pass.cpp
index e4232ff..322c9ff 100644
--- a/test/containers/sequences/vector/vector.modifiers/insert_iter_size_value.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/insert_iter_size_value.pass.cpp
@@ -18,7 +18,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/insert_iter_value.pass.cpp b/test/containers/sequences/vector/vector.modifiers/insert_iter_value.pass.cpp
index d24847b..28c7718 100644
--- a/test/containers/sequences/vector/vector.modifiers/insert_iter_value.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/insert_iter_value.pass.cpp
@@ -18,7 +18,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/pop_back.pass.cpp b/test/containers/sequences/vector/vector.modifiers/pop_back.pass.cpp
index 16891ae..62fa601 100644
--- a/test/containers/sequences/vector/vector.modifiers/pop_back.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/pop_back.pass.cpp
@@ -18,7 +18,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 #if _LIBCPP_DEBUG >= 1
 #include <cstdlib>
diff --git a/test/containers/sequences/vector/vector.modifiers/push_back.pass.cpp b/test/containers/sequences/vector/vector.modifiers/push_back.pass.cpp
index 3170fe8..5446b74 100644
--- a/test/containers/sequences/vector/vector.modifiers/push_back.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/push_back.pass.cpp
@@ -14,7 +14,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.modifiers/push_back_rvalue.pass.cpp b/test/containers/sequences/vector/vector.modifiers/push_back_rvalue.pass.cpp
index 0127dbc..bb1af29 100644
--- a/test/containers/sequences/vector/vector.modifiers/push_back_rvalue.pass.cpp
+++ b/test/containers/sequences/vector/vector.modifiers/push_back_rvalue.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../MoveOnly.h"
 #include "../../../stack_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.special/db_swap_1.pass.cpp b/test/containers/sequences/vector/vector.special/db_swap_1.pass.cpp
index 7443fec..e7f6a00 100644
--- a/test/containers/sequences/vector/vector.special/db_swap_1.pass.cpp
+++ b/test/containers/sequences/vector/vector.special/db_swap_1.pass.cpp
@@ -19,7 +19,7 @@
 #include <vector>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/sequences/vector/vector.special/swap.pass.cpp b/test/containers/sequences/vector/vector.special/swap.pass.cpp
index 8e2ea37..9fa1274 100644
--- a/test/containers/sequences/vector/vector.special/swap.pass.cpp
+++ b/test/containers/sequences/vector/vector.special/swap.pass.cpp
@@ -15,7 +15,7 @@
 #include <vector>
 #include <cassert>
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/bucket.pass.cpp b/test/containers/unord/unord.map/bucket.pass.cpp
index aa69708..6837294 100644
--- a/test/containers/unord/unord.map/bucket.pass.cpp
+++ b/test/containers/unord/unord.map/bucket.pass.cpp
@@ -23,7 +23,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/bucket_count.pass.cpp b/test/containers/unord/unord.map/bucket_count.pass.cpp
index dbc24ee..9b8b4ab 100644
--- a/test/containers/unord/unord.map/bucket_count.pass.cpp
+++ b/test/containers/unord/unord.map/bucket_count.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/bucket_size.pass.cpp b/test/containers/unord/unord.map/bucket_size.pass.cpp
index 6000ab9..f3ab8ff 100644
--- a/test/containers/unord/unord.map/bucket_size.pass.cpp
+++ b/test/containers/unord/unord.map/bucket_size.pass.cpp
@@ -23,7 +23,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/count.pass.cpp b/test/containers/unord/unord.map/count.pass.cpp
index 04d1699..ebacf2b 100644
--- a/test/containers/unord/unord.map/count.pass.cpp
+++ b/test/containers/unord/unord.map/count.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/db_iterators_7.pass.cpp b/test/containers/unord/unord.map/db_iterators_7.pass.cpp
index 4e1ad1e..b8db0a3 100644
--- a/test/containers/unord/unord.map/db_iterators_7.pass.cpp
+++ b/test/containers/unord/unord.map/db_iterators_7.pass.cpp
@@ -22,7 +22,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/db_iterators_8.pass.cpp b/test/containers/unord/unord.map/db_iterators_8.pass.cpp
index dbf0dde..c923dd7 100644
--- a/test/containers/unord/unord.map/db_iterators_8.pass.cpp
+++ b/test/containers/unord/unord.map/db_iterators_8.pass.cpp
@@ -22,7 +22,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/db_local_iterators_7.pass.cpp b/test/containers/unord/unord.map/db_local_iterators_7.pass.cpp
index 95797f2..fa1886b 100644
--- a/test/containers/unord/unord.map/db_local_iterators_7.pass.cpp
+++ b/test/containers/unord/unord.map/db_local_iterators_7.pass.cpp
@@ -22,7 +22,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/db_local_iterators_8.pass.cpp b/test/containers/unord/unord.map/db_local_iterators_8.pass.cpp
index 8a2ae76..4b071ca 100644
--- a/test/containers/unord/unord.map/db_local_iterators_8.pass.cpp
+++ b/test/containers/unord/unord.map/db_local_iterators_8.pass.cpp
@@ -22,7 +22,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/eq.pass.cpp b/test/containers/unord/unord.map/eq.pass.cpp
index ec13785..17184e6 100644
--- a/test/containers/unord/unord.map/eq.pass.cpp
+++ b/test/containers/unord/unord.map/eq.pass.cpp
@@ -23,7 +23,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/equal_range_const.pass.cpp b/test/containers/unord/unord.map/equal_range_const.pass.cpp
index 8f9c58e..d61c2e2 100644
--- a/test/containers/unord/unord.map/equal_range_const.pass.cpp
+++ b/test/containers/unord/unord.map/equal_range_const.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/equal_range_non_const.pass.cpp b/test/containers/unord/unord.map/equal_range_non_const.pass.cpp
index 9291eb4..508205a 100644
--- a/test/containers/unord/unord.map/equal_range_non_const.pass.cpp
+++ b/test/containers/unord/unord.map/equal_range_non_const.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/find_const.pass.cpp b/test/containers/unord/unord.map/find_const.pass.cpp
index c049d23..ee897d9 100644
--- a/test/containers/unord/unord.map/find_const.pass.cpp
+++ b/test/containers/unord/unord.map/find_const.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/find_non_const.pass.cpp b/test/containers/unord/unord.map/find_non_const.pass.cpp
index 0412693..efab12b 100644
--- a/test/containers/unord/unord.map/find_non_const.pass.cpp
+++ b/test/containers/unord/unord.map/find_non_const.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/iterators.pass.cpp b/test/containers/unord/unord.map/iterators.pass.cpp
index c780a66..4ac126a 100644
--- a/test/containers/unord/unord.map/iterators.pass.cpp
+++ b/test/containers/unord/unord.map/iterators.pass.cpp
@@ -24,7 +24,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/load_factor.pass.cpp b/test/containers/unord/unord.map/load_factor.pass.cpp
index 70e6048..3b12480 100644
--- a/test/containers/unord/unord.map/load_factor.pass.cpp
+++ b/test/containers/unord/unord.map/load_factor.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 #include <cfloat>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/local_iterators.pass.cpp b/test/containers/unord/unord.map/local_iterators.pass.cpp
index ec10f50..770b1ac 100644
--- a/test/containers/unord/unord.map/local_iterators.pass.cpp
+++ b/test/containers/unord/unord.map/local_iterators.pass.cpp
@@ -24,7 +24,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/max_bucket_count.pass.cpp b/test/containers/unord/unord.map/max_bucket_count.pass.cpp
index a1f1c3c..b4ca8eb 100644
--- a/test/containers/unord/unord.map/max_bucket_count.pass.cpp
+++ b/test/containers/unord/unord.map/max_bucket_count.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/max_load_factor.pass.cpp b/test/containers/unord/unord.map/max_load_factor.pass.cpp
index 925997b..69fd70d 100644
--- a/test/containers/unord/unord.map/max_load_factor.pass.cpp
+++ b/test/containers/unord/unord.map/max_load_factor.pass.cpp
@@ -24,7 +24,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/max_size.pass.cpp b/test/containers/unord/unord.map/max_size.pass.cpp
index 1993741..7d5ae3a 100644
--- a/test/containers/unord/unord.map/max_size.pass.cpp
+++ b/test/containers/unord/unord.map/max_size.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_map>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/rehash.pass.cpp b/test/containers/unord/unord.map/rehash.pass.cpp
index c516872..84ece23 100644
--- a/test/containers/unord/unord.map/rehash.pass.cpp
+++ b/test/containers/unord/unord.map/rehash.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(const C& c)
diff --git a/test/containers/unord/unord.map/reserve.pass.cpp b/test/containers/unord/unord.map/reserve.pass.cpp
index 753316f..48667cd 100644
--- a/test/containers/unord/unord.map/reserve.pass.cpp
+++ b/test/containers/unord/unord.map/reserve.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(const C& c)
diff --git a/test/containers/unord/unord.map/swap_member.pass.cpp b/test/containers/unord/unord.map/swap_member.pass.cpp
index 311a9a5..d0e1620 100644
--- a/test/containers/unord/unord.map/swap_member.pass.cpp
+++ b/test/containers/unord/unord.map/swap_member.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../test_compare.h"
 #include "../../test_hash.h"
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/types.pass.cpp b/test/containers/unord/unord.map/types.pass.cpp
index 4bf4591..134304d 100644
--- a/test/containers/unord/unord.map/types.pass.cpp
+++ b/test/containers/unord/unord.map/types.pass.cpp
@@ -31,7 +31,8 @@
 #include <unordered_map>
 #include <type_traits>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
+#include "powerpc-darwin.h"
 
 int main()
 {
@@ -47,7 +48,11 @@ int main()
         static_assert((std::is_same<C::const_reference, const C::value_type&>::value), "");
         static_assert((std::is_same<C::pointer, C::value_type*>::value), "");
         static_assert((std::is_same<C::const_pointer, const C::value_type*>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+        static_assert(sizeof(C::size_type) == sizeof(std::size_t), "");
+#else
         static_assert((std::is_same<C::size_type, std::size_t>::value), "");
+#endif
         static_assert((std::is_same<C::difference_type, std::ptrdiff_t>::value), "");
     }
 #if __cplusplus >= 201103L
@@ -64,7 +69,11 @@ int main()
         static_assert((std::is_same<C::const_reference, const C::value_type&>::value), "");
         static_assert((std::is_same<C::pointer, min_pointer<C::value_type>>::value), "");
         static_assert((std::is_same<C::const_pointer, min_pointer<const C::value_type>>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+        static_assert(sizeof(C::size_type) == sizeof(std::size_t), "");
+#else
         static_assert((std::is_same<C::size_type, std::size_t>::value), "");
+#endif
         static_assert((std::is_same<C::difference_type, std::ptrdiff_t>::value), "");
     }
 #endif
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/allocator.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/allocator.pass.cpp
index b49d6bf..9267f1f 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/allocator.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/allocator.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/assign_copy.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/assign_copy.pass.cpp
index 8e8f97d..987d339 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/assign_copy.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/assign_copy.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/assign_init.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/assign_init.pass.cpp
index 86d44f2..3a854e1 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/assign_init.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/assign_init.pass.cpp
@@ -22,7 +22,7 @@
 
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/assign_move.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/assign_move.pass.cpp
index f722249..a98c900 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/assign_move.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/assign_move.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/copy.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/copy.pass.cpp
index 398f2fd..1aa67ef 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/copy.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/copy.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/copy_alloc.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/copy_alloc.pass.cpp
index c7d5396..800bc59 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/copy_alloc.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/copy_alloc.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/default.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/default.pass.cpp
index b32c260..1adaba9 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/default.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/default.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/init.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/init.pass.cpp
index 594331c..60895dd 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/init.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/init.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/init_size.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/init_size.pass.cpp
index fd28845..e159105 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/init_size.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/init_size.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash.pass.cpp
index bcc97b6..59b488f 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal.pass.cpp
index 5e21873..e2c0de7 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal.pass.cpp
@@ -24,7 +24,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal_allocator.pass.cpp
index 0f5e7b5..e7ae08e 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal_allocator.pass.cpp
@@ -24,7 +24,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp
index 41055c4..379ce22 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/move_alloc.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/move_alloc.pass.cpp
index 0f73480..ae2f2f7 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/move_alloc.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/move_alloc.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/range.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/range.pass.cpp
index bc316d3..8026c01 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/range.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/range.pass.cpp
@@ -26,7 +26,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/range_size.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/range_size.pass.cpp
index 42822bc..2f01ba0 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/range_size.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/range_size.pass.cpp
@@ -26,7 +26,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash.pass.cpp
index f6f294f..0aaf1d4 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash.pass.cpp
@@ -27,7 +27,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash_equal.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash_equal.pass.cpp
index 16b7f8b..cc07ff2 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash_equal.pass.cpp
@@ -27,7 +27,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash_equal_allocator.pass.cpp
index 82825ce..b672587 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/range_size_hash_equal_allocator.pass.cpp
@@ -28,7 +28,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/size.fail.cpp b/test/containers/unord/unord.map/unord.map.cnstr/size.fail.cpp
index 7130366..7881f70 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/size.fail.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/size.fail.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/size.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/size.pass.cpp
index 81cb07d..05d6937 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/size.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/size.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/size_hash.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/size_hash.pass.cpp
index 783189c..0d54d5e 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/size_hash.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/size_hash.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/size_hash_equal.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/size_hash_equal.pass.cpp
index 9c7f2b5..83e0ffc 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/size_hash_equal.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.cnstr/size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.map/unord.map.cnstr/size_hash_equal_allocator.pass.cpp
index 139ffad..0b77546 100644
--- a/test/containers/unord/unord.map/unord.map.cnstr/size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.cnstr/size_hash_equal_allocator.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.elem/at.pass.cpp b/test/containers/unord/unord.map/unord.map.elem/at.pass.cpp
index c8eade2..c4d7128 100644
--- a/test/containers/unord/unord.map/unord.map.elem/at.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.elem/at.pass.cpp
@@ -21,7 +21,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.elem/index.pass.cpp b/test/containers/unord/unord.map/unord.map.elem/index.pass.cpp
index bbee80d..7f4e067 100644
--- a/test/containers/unord/unord.map/unord.map.elem/index.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.elem/index.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unord.map.swap/swap_non_member.pass.cpp b/test/containers/unord/unord.map/unord.map.swap/swap_non_member.pass.cpp
index 224286a..44a6b8f 100644
--- a/test/containers/unord/unord.map/unord.map.swap/swap_non_member.pass.cpp
+++ b/test/containers/unord/unord.map/unord.map.swap/swap_non_member.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/clear.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/clear.pass.cpp
index 0e0f188..9f320e9 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/clear.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/clear.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/emplace.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/emplace.pass.cpp
index a115101..5de74d2 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/emplace.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/emplace.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 
 #include "../../../Emplaceable.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/emplace_hint.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/emplace_hint.pass.cpp
index 7cd14c6..21a4689 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/emplace_hint.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/emplace_hint.pass.cpp
@@ -24,7 +24,7 @@
 #include <cassert>
 
 #include "../../../Emplaceable.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/erase_const_iter.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/erase_const_iter.pass.cpp
index 977581c..422dbe4 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/erase_const_iter.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/erase_const_iter.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/erase_key.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/erase_key.pass.cpp
index c2a8666..e6741a8 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/erase_key.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/erase_key.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/erase_range.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/erase_range.pass.cpp
index ad915fd..f0664c3 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/erase_range.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/erase_range.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/insert_const_lvalue.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/insert_const_lvalue.pass.cpp
index 8bf66ca..a16f097 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/insert_const_lvalue.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/insert_const_lvalue.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_const_lvalue.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_const_lvalue.pass.cpp
index 2e4230a..981b8fb 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_const_lvalue.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_const_lvalue.pass.cpp
@@ -22,7 +22,7 @@
 #include <unordered_map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_rvalue.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_rvalue.pass.cpp
index 5a4fd23..92f6c40 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_rvalue.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_rvalue.pass.cpp
@@ -25,7 +25,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/insert_init.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/insert_init.pass.cpp
index b667c7e..81e8a46 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/insert_init.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/insert_init.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/insert_range.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/insert_range.pass.cpp
index 68cb25c..fc44e78 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/insert_range.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/insert_range.pass.cpp
@@ -21,7 +21,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.map/unorder.map.modifiers/insert_rvalue.pass.cpp b/test/containers/unord/unord.map/unorder.map.modifiers/insert_rvalue.pass.cpp
index 3e050e9..6c5e8c8 100644
--- a/test/containers/unord/unord.map/unorder.map.modifiers/insert_rvalue.pass.cpp
+++ b/test/containers/unord/unord.map/unorder.map.modifiers/insert_rvalue.pass.cpp
@@ -21,7 +21,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/bucket.pass.cpp b/test/containers/unord/unord.multimap/bucket.pass.cpp
index 46f7334..be5acc1 100644
--- a/test/containers/unord/unord.multimap/bucket.pass.cpp
+++ b/test/containers/unord/unord.multimap/bucket.pass.cpp
@@ -23,7 +23,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/bucket_size.pass.cpp b/test/containers/unord/unord.multimap/bucket_size.pass.cpp
index 1528a34..a02f72e 100644
--- a/test/containers/unord/unord.multimap/bucket_size.pass.cpp
+++ b/test/containers/unord/unord.multimap/bucket_size.pass.cpp
@@ -23,7 +23,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/count.pass.cpp b/test/containers/unord/unord.multimap/count.pass.cpp
index a1d0432..66ac28c 100644
--- a/test/containers/unord/unord.multimap/count.pass.cpp
+++ b/test/containers/unord/unord.multimap/count.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/db_iterators_7.pass.cpp b/test/containers/unord/unord.multimap/db_iterators_7.pass.cpp
index e7f06fe..b6ba8d6 100644
--- a/test/containers/unord/unord.multimap/db_iterators_7.pass.cpp
+++ b/test/containers/unord/unord.multimap/db_iterators_7.pass.cpp
@@ -22,7 +22,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/db_iterators_8.pass.cpp b/test/containers/unord/unord.multimap/db_iterators_8.pass.cpp
index 2f7a0d9..f5ea508 100644
--- a/test/containers/unord/unord.multimap/db_iterators_8.pass.cpp
+++ b/test/containers/unord/unord.multimap/db_iterators_8.pass.cpp
@@ -22,7 +22,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp b/test/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp
index 330374f..93cbd54 100644
--- a/test/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp
+++ b/test/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp
@@ -22,7 +22,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp b/test/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp
index 9185147..159ae49 100644
--- a/test/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp
+++ b/test/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp
@@ -22,7 +22,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/eq.pass.cpp b/test/containers/unord/unord.multimap/eq.pass.cpp
index b069ded..3e6eaf6 100644
--- a/test/containers/unord/unord.multimap/eq.pass.cpp
+++ b/test/containers/unord/unord.multimap/eq.pass.cpp
@@ -23,7 +23,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/equal_range_const.pass.cpp b/test/containers/unord/unord.multimap/equal_range_const.pass.cpp
index bc0c703..11116e9 100644
--- a/test/containers/unord/unord.multimap/equal_range_const.pass.cpp
+++ b/test/containers/unord/unord.multimap/equal_range_const.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/equal_range_non_const.pass.cpp b/test/containers/unord/unord.multimap/equal_range_non_const.pass.cpp
index 8b78f70..98d6862 100644
--- a/test/containers/unord/unord.multimap/equal_range_non_const.pass.cpp
+++ b/test/containers/unord/unord.multimap/equal_range_non_const.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/find_const.pass.cpp b/test/containers/unord/unord.multimap/find_const.pass.cpp
index b967a51..0d9ccaa 100644
--- a/test/containers/unord/unord.multimap/find_const.pass.cpp
+++ b/test/containers/unord/unord.multimap/find_const.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/find_non_const.pass.cpp b/test/containers/unord/unord.multimap/find_non_const.pass.cpp
index 8da85ba..fd623d9 100644
--- a/test/containers/unord/unord.multimap/find_non_const.pass.cpp
+++ b/test/containers/unord/unord.multimap/find_non_const.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/iterators.pass.cpp b/test/containers/unord/unord.multimap/iterators.pass.cpp
index 9abb196..8a3faa8 100644
--- a/test/containers/unord/unord.multimap/iterators.pass.cpp
+++ b/test/containers/unord/unord.multimap/iterators.pass.cpp
@@ -24,7 +24,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/load_factor.pass.cpp b/test/containers/unord/unord.multimap/load_factor.pass.cpp
index 29cf689..0d25ef5 100644
--- a/test/containers/unord/unord.multimap/load_factor.pass.cpp
+++ b/test/containers/unord/unord.multimap/load_factor.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 #include <cfloat>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/local_iterators.pass.cpp b/test/containers/unord/unord.multimap/local_iterators.pass.cpp
index 695953d..35e4c77 100644
--- a/test/containers/unord/unord.multimap/local_iterators.pass.cpp
+++ b/test/containers/unord/unord.multimap/local_iterators.pass.cpp
@@ -24,7 +24,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/max_bucket_count.pass.cpp b/test/containers/unord/unord.multimap/max_bucket_count.pass.cpp
index 0504db0..23b9057 100644
--- a/test/containers/unord/unord.multimap/max_bucket_count.pass.cpp
+++ b/test/containers/unord/unord.multimap/max_bucket_count.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/max_load_factor.pass.cpp b/test/containers/unord/unord.multimap/max_load_factor.pass.cpp
index 0a20845..39b7fee 100644
--- a/test/containers/unord/unord.multimap/max_load_factor.pass.cpp
+++ b/test/containers/unord/unord.multimap/max_load_factor.pass.cpp
@@ -24,7 +24,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/max_size.pass.cpp b/test/containers/unord/unord.multimap/max_size.pass.cpp
index ac247d7..caba593 100644
--- a/test/containers/unord/unord.multimap/max_size.pass.cpp
+++ b/test/containers/unord/unord.multimap/max_size.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_map>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/rehash.pass.cpp b/test/containers/unord/unord.multimap/rehash.pass.cpp
index e722c04..1d99208 100644
--- a/test/containers/unord/unord.multimap/rehash.pass.cpp
+++ b/test/containers/unord/unord.multimap/rehash.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 #include <cfloat>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(const C& c)
diff --git a/test/containers/unord/unord.multimap/reserve.pass.cpp b/test/containers/unord/unord.multimap/reserve.pass.cpp
index f13ae73..801c744 100644
--- a/test/containers/unord/unord.multimap/reserve.pass.cpp
+++ b/test/containers/unord/unord.multimap/reserve.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(const C& c)
diff --git a/test/containers/unord/unord.multimap/swap_member.pass.cpp b/test/containers/unord/unord.multimap/swap_member.pass.cpp
index 41b34dd..e68fcd5 100644
--- a/test/containers/unord/unord.multimap/swap_member.pass.cpp
+++ b/test/containers/unord/unord.multimap/swap_member.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../test_hash.h"
 #include "../../test_allocator.h"
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/types.pass.cpp b/test/containers/unord/unord.multimap/types.pass.cpp
index 369063c..2ad8a5f 100644
--- a/test/containers/unord/unord.multimap/types.pass.cpp
+++ b/test/containers/unord/unord.multimap/types.pass.cpp
@@ -31,7 +31,8 @@
 #include <unordered_map>
 #include <type_traits>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
+#include "powerpc-darwin.h"
 
 int main()
 {
@@ -47,7 +48,11 @@ int main()
         static_assert((std::is_same<C::const_reference, const C::value_type&>::value), "");
         static_assert((std::is_same<C::pointer, C::value_type*>::value), "");
         static_assert((std::is_same<C::const_pointer, const C::value_type*>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+        static_assert(sizeof(C::size_type) == sizeof(std::size_t), "");
+#else
         static_assert((std::is_same<C::size_type, std::size_t>::value), "");
+#endif
         static_assert((std::is_same<C::difference_type, std::ptrdiff_t>::value), "");
     }
 #if __cplusplus >= 201103L
@@ -64,7 +69,11 @@ int main()
         static_assert((std::is_same<C::const_reference, const C::value_type&>::value), "");
         static_assert((std::is_same<C::pointer, min_pointer<C::value_type>>::value), "");
         static_assert((std::is_same<C::const_pointer, min_pointer<const C::value_type>>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+        static_assert(sizeof(C::size_type) == sizeof(std::size_t), "");
+#else
         static_assert((std::is_same<C::size_type, std::size_t>::value), "");
+#endif
         static_assert((std::is_same<C::difference_type, std::ptrdiff_t>::value), "");
     }
 #endif
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/allocator.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/allocator.pass.cpp
index dbcdca4..b8ceb36 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/allocator.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/allocator.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_copy.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_copy.pass.cpp
index 5c074ec..20b4da3 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_copy.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_copy.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_init.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_init.pass.cpp
index a48f2ea..4bac2a8 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_init.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_init.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_move.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_move.pass.cpp
index 8c7bc76..f9aa416 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_move.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_move.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/copy.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/copy.pass.cpp
index d46ba1c..e896673 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/copy.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/copy.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/copy_alloc.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/copy_alloc.pass.cpp
index 0e0d864..fc3f31a 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/copy_alloc.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/copy_alloc.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/default.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/default.pass.cpp
index f450455..34b26f8 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/default.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/default.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/init.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/init.pass.cpp
index bcde666..45a56d7 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/init.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/init.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size.pass.cpp
index 7cb2927..1c1b5f2 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash.pass.cpp
index 7a2faaa..45b4400 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal.pass.cpp
index 73c0ec2..370bc53 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal.pass.cpp
@@ -24,7 +24,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal_allocator.pass.cpp
index bc59d64..a115d16 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal_allocator.pass.cpp
@@ -24,7 +24,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp
index b4983ea..5f24df2 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/move_alloc.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/move_alloc.pass.cpp
index 6f0cba8..25f1193 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/move_alloc.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/move_alloc.pass.cpp
@@ -25,7 +25,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/range.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/range.pass.cpp
index a431481..5849ece 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/range.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/range.pass.cpp
@@ -26,7 +26,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size.pass.cpp
index 53a50de..58006fb 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size.pass.cpp
@@ -26,7 +26,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash.pass.cpp
index 02cfb2f..a54bc5b 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash.pass.cpp
@@ -27,7 +27,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash_equal.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash_equal.pass.cpp
index e4fdfd3..ca48b5e 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash_equal.pass.cpp
@@ -27,7 +27,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash_equal_allocator.pass.cpp
index 640de35..3208c78 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/range_size_hash_equal_allocator.pass.cpp
@@ -28,7 +28,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/size.fail.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/size.fail.cpp
index 95ba70b..787e930 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/size.fail.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/size.fail.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/size.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/size.pass.cpp
index d9fac2f..cfc7b1a 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/size.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/size.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash.pass.cpp
index d691dd9..ea20b6b 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash_equal.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash_equal.pass.cpp
index 9f90275..5fb433a 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash_equal.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash_equal_allocator.pass.cpp
index 23fae57..1512f36 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash_equal_allocator.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/clear.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/clear.pass.cpp
index a731f5b..4efcfaa 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/clear.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/clear.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace.pass.cpp
index 80453b1..4f2e8ef 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 
 #include "../../../Emplaceable.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace_hint.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace_hint.pass.cpp
index 13776de..4d141ad 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace_hint.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace_hint.pass.cpp
@@ -24,7 +24,7 @@
 #include <cassert>
 
 #include "../../../Emplaceable.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_const_iter.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_const_iter.pass.cpp
index 2b1d4d2..25d6a7a 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_const_iter.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_const_iter.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_key.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_key.pass.cpp
index d59609a..3c099f3 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_key.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_key.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_range.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_range.pass.cpp
index 3ca3a36..f60ec07 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_range.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/erase_range.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_const_lvalue.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_const_lvalue.pass.cpp
index 0528714..e7e7cb0 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_const_lvalue.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_const_lvalue.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_const_lvalue.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_const_lvalue.pass.cpp
index f7149a5..c7cb1f4 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_const_lvalue.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_const_lvalue.pass.cpp
@@ -22,7 +22,7 @@
 #include <unordered_map>
 #include <cassert>
 
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp
index 0489fc7..bb89c3f 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp
@@ -25,7 +25,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_init.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_init.pass.cpp
index 0a7d8ea..23dbe84 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_init.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_init.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_range.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_range.pass.cpp
index bda1958..2820639 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_range.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_range.pass.cpp
@@ -21,7 +21,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp
index c8bd128..f363758 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp
@@ -21,7 +21,7 @@
 #include <cassert>
 
 #include "../../../MoveOnly.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multimap/unord.multimap.swap/swap_non_member.pass.cpp b/test/containers/unord/unord.multimap/unord.multimap.swap/swap_non_member.pass.cpp
index 0b5c5c3..286b574 100644
--- a/test/containers/unord/unord.multimap/unord.multimap.swap/swap_non_member.pass.cpp
+++ b/test/containers/unord/unord.multimap/unord.multimap.swap/swap_non_member.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/bucket.pass.cpp b/test/containers/unord/unord.multiset/bucket.pass.cpp
index 2d8927d..0293133 100644
--- a/test/containers/unord/unord.multiset/bucket.pass.cpp
+++ b/test/containers/unord/unord.multiset/bucket.pass.cpp
@@ -22,7 +22,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/bucket_count.pass.cpp b/test/containers/unord/unord.multiset/bucket_count.pass.cpp
index 36c45b0..c7842e5 100644
--- a/test/containers/unord/unord.multiset/bucket_count.pass.cpp
+++ b/test/containers/unord/unord.multiset/bucket_count.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/bucket_size.pass.cpp b/test/containers/unord/unord.multiset/bucket_size.pass.cpp
index 8718223..639d7ac 100644
--- a/test/containers/unord/unord.multiset/bucket_size.pass.cpp
+++ b/test/containers/unord/unord.multiset/bucket_size.pass.cpp
@@ -22,7 +22,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/clear.pass.cpp b/test/containers/unord/unord.multiset/clear.pass.cpp
index 7391631..61ca847 100644
--- a/test/containers/unord/unord.multiset/clear.pass.cpp
+++ b/test/containers/unord/unord.multiset/clear.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/count.pass.cpp b/test/containers/unord/unord.multiset/count.pass.cpp
index 426b5f8..e548324 100644
--- a/test/containers/unord/unord.multiset/count.pass.cpp
+++ b/test/containers/unord/unord.multiset/count.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/db_iterators_7.pass.cpp b/test/containers/unord/unord.multiset/db_iterators_7.pass.cpp
index 92611ca..c8ef2fb 100644
--- a/test/containers/unord/unord.multiset/db_iterators_7.pass.cpp
+++ b/test/containers/unord/unord.multiset/db_iterators_7.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/db_iterators_8.pass.cpp b/test/containers/unord/unord.multiset/db_iterators_8.pass.cpp
index 635e211..eef7997 100644
--- a/test/containers/unord/unord.multiset/db_iterators_8.pass.cpp
+++ b/test/containers/unord/unord.multiset/db_iterators_8.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp b/test/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp
index 8bfe0fc..c1de95c 100644
--- a/test/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp
+++ b/test/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp b/test/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp
index 1adc686..962b852 100644
--- a/test/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp
+++ b/test/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/emplace.pass.cpp b/test/containers/unord/unord.multiset/emplace.pass.cpp
index 7847883..13787d9 100644
--- a/test/containers/unord/unord.multiset/emplace.pass.cpp
+++ b/test/containers/unord/unord.multiset/emplace.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 
 #include "../../Emplaceable.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/emplace_hint.pass.cpp b/test/containers/unord/unord.multiset/emplace_hint.pass.cpp
index eddffc4..8885cc0 100644
--- a/test/containers/unord/unord.multiset/emplace_hint.pass.cpp
+++ b/test/containers/unord/unord.multiset/emplace_hint.pass.cpp
@@ -24,7 +24,7 @@
 #include <cassert>
 
 #include "../../Emplaceable.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/eq.pass.cpp b/test/containers/unord/unord.multiset/eq.pass.cpp
index 7350e44..bbedbc9 100644
--- a/test/containers/unord/unord.multiset/eq.pass.cpp
+++ b/test/containers/unord/unord.multiset/eq.pass.cpp
@@ -22,7 +22,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/equal_range_const.pass.cpp b/test/containers/unord/unord.multiset/equal_range_const.pass.cpp
index 3fe242f..a0aaac2 100644
--- a/test/containers/unord/unord.multiset/equal_range_const.pass.cpp
+++ b/test/containers/unord/unord.multiset/equal_range_const.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/equal_range_non_const.pass.cpp b/test/containers/unord/unord.multiset/equal_range_non_const.pass.cpp
index ebda719..73d44f7 100644
--- a/test/containers/unord/unord.multiset/equal_range_non_const.pass.cpp
+++ b/test/containers/unord/unord.multiset/equal_range_non_const.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/erase_const_iter.pass.cpp b/test/containers/unord/unord.multiset/erase_const_iter.pass.cpp
index 6cb2c72..6a005d3 100644
--- a/test/containers/unord/unord.multiset/erase_const_iter.pass.cpp
+++ b/test/containers/unord/unord.multiset/erase_const_iter.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/erase_key.pass.cpp b/test/containers/unord/unord.multiset/erase_key.pass.cpp
index b0b6815..646d356 100644
--- a/test/containers/unord/unord.multiset/erase_key.pass.cpp
+++ b/test/containers/unord/unord.multiset/erase_key.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/erase_range.pass.cpp b/test/containers/unord/unord.multiset/erase_range.pass.cpp
index 601c4b3..baac08e 100644
--- a/test/containers/unord/unord.multiset/erase_range.pass.cpp
+++ b/test/containers/unord/unord.multiset/erase_range.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/find_const.pass.cpp b/test/containers/unord/unord.multiset/find_const.pass.cpp
index dbe4eae..5caaf20 100644
--- a/test/containers/unord/unord.multiset/find_const.pass.cpp
+++ b/test/containers/unord/unord.multiset/find_const.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/find_non_const.pass.cpp b/test/containers/unord/unord.multiset/find_non_const.pass.cpp
index af63018..0304878 100644
--- a/test/containers/unord/unord.multiset/find_non_const.pass.cpp
+++ b/test/containers/unord/unord.multiset/find_non_const.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/insert_const_lvalue.pass.cpp b/test/containers/unord/unord.multiset/insert_const_lvalue.pass.cpp
index ce46997..0051e49 100644
--- a/test/containers/unord/unord.multiset/insert_const_lvalue.pass.cpp
+++ b/test/containers/unord/unord.multiset/insert_const_lvalue.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/insert_hint_const_lvalue.pass.cpp b/test/containers/unord/unord.multiset/insert_hint_const_lvalue.pass.cpp
index d3a3d76..25b4bc1 100644
--- a/test/containers/unord/unord.multiset/insert_hint_const_lvalue.pass.cpp
+++ b/test/containers/unord/unord.multiset/insert_hint_const_lvalue.pass.cpp
@@ -22,7 +22,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/insert_hint_rvalue.pass.cpp b/test/containers/unord/unord.multiset/insert_hint_rvalue.pass.cpp
index fb95ea3..634e4f4 100644
--- a/test/containers/unord/unord.multiset/insert_hint_rvalue.pass.cpp
+++ b/test/containers/unord/unord.multiset/insert_hint_rvalue.pass.cpp
@@ -23,7 +23,7 @@
 #include <cassert>
 
 #include "../../MoveOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/insert_init.pass.cpp b/test/containers/unord/unord.multiset/insert_init.pass.cpp
index 7a9d3f7..6941d86 100644
--- a/test/containers/unord/unord.multiset/insert_init.pass.cpp
+++ b/test/containers/unord/unord.multiset/insert_init.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/insert_range.pass.cpp b/test/containers/unord/unord.multiset/insert_range.pass.cpp
index 28637f5..41c9d81 100644
--- a/test/containers/unord/unord.multiset/insert_range.pass.cpp
+++ b/test/containers/unord/unord.multiset/insert_range.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/insert_rvalue.pass.cpp b/test/containers/unord/unord.multiset/insert_rvalue.pass.cpp
index 7cddb0d..65a5bc2 100644
--- a/test/containers/unord/unord.multiset/insert_rvalue.pass.cpp
+++ b/test/containers/unord/unord.multiset/insert_rvalue.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 
 #include "../../MoveOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/iterators.pass.cpp b/test/containers/unord/unord.multiset/iterators.pass.cpp
index e51b3e1..fd7077b 100644
--- a/test/containers/unord/unord.multiset/iterators.pass.cpp
+++ b/test/containers/unord/unord.multiset/iterators.pass.cpp
@@ -23,7 +23,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/load_factor.pass.cpp b/test/containers/unord/unord.multiset/load_factor.pass.cpp
index c6e4825..07980c2 100644
--- a/test/containers/unord/unord.multiset/load_factor.pass.cpp
+++ b/test/containers/unord/unord.multiset/load_factor.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 #include <cfloat>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/local_iterators.pass.cpp b/test/containers/unord/unord.multiset/local_iterators.pass.cpp
index 6cc07b6..3471707 100644
--- a/test/containers/unord/unord.multiset/local_iterators.pass.cpp
+++ b/test/containers/unord/unord.multiset/local_iterators.pass.cpp
@@ -23,7 +23,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/max_bucket_count.pass.cpp b/test/containers/unord/unord.multiset/max_bucket_count.pass.cpp
index fa55a1f..619a8cf 100644
--- a/test/containers/unord/unord.multiset/max_bucket_count.pass.cpp
+++ b/test/containers/unord/unord.multiset/max_bucket_count.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/max_load_factor.pass.cpp b/test/containers/unord/unord.multiset/max_load_factor.pass.cpp
index 00cd1b1..08f52bb 100644
--- a/test/containers/unord/unord.multiset/max_load_factor.pass.cpp
+++ b/test/containers/unord/unord.multiset/max_load_factor.pass.cpp
@@ -23,7 +23,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/max_size.pass.cpp b/test/containers/unord/unord.multiset/max_size.pass.cpp
index 2317129..a5d0b55 100644
--- a/test/containers/unord/unord.multiset/max_size.pass.cpp
+++ b/test/containers/unord/unord.multiset/max_size.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/rehash.pass.cpp b/test/containers/unord/unord.multiset/rehash.pass.cpp
index 9358c32..bc8d461 100644
--- a/test/containers/unord/unord.multiset/rehash.pass.cpp
+++ b/test/containers/unord/unord.multiset/rehash.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(const C& c)
diff --git a/test/containers/unord/unord.multiset/reserve.pass.cpp b/test/containers/unord/unord.multiset/reserve.pass.cpp
index e1c9e0a..0c17583 100644
--- a/test/containers/unord/unord.multiset/reserve.pass.cpp
+++ b/test/containers/unord/unord.multiset/reserve.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(const C& c)
diff --git a/test/containers/unord/unord.multiset/swap_member.pass.cpp b/test/containers/unord/unord.multiset/swap_member.pass.cpp
index 3a7c506..5c2ea23 100644
--- a/test/containers/unord/unord.multiset/swap_member.pass.cpp
+++ b/test/containers/unord/unord.multiset/swap_member.pass.cpp
@@ -21,7 +21,7 @@
 #include "../../test_compare.h"
 #include "../../test_hash.h"
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/types.pass.cpp b/test/containers/unord/unord.multiset/types.pass.cpp
index 5d7fa3a..5dd7d4c 100644
--- a/test/containers/unord/unord.multiset/types.pass.cpp
+++ b/test/containers/unord/unord.multiset/types.pass.cpp
@@ -30,7 +30,8 @@
 #include <unordered_set>
 #include <type_traits>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
+#include "powerpc-darwin.h"
 
 int main()
 {
@@ -45,7 +46,11 @@ int main()
         static_assert((std::is_same<C::const_reference, const C::value_type&>::value), "");
         static_assert((std::is_same<C::pointer, C::value_type*>::value), "");
         static_assert((std::is_same<C::const_pointer, const C::value_type*>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+        static_assert(sizeof(C::size_type) == sizeof(std::size_t), "");
+#else
         static_assert((std::is_same<C::size_type, std::size_t>::value), "");
+#endif
         static_assert((std::is_same<C::difference_type, std::ptrdiff_t>::value), "");
     }
 #if __cplusplus >= 201103L
@@ -61,7 +66,11 @@ int main()
         static_assert((std::is_same<C::const_reference, const C::value_type&>::value), "");
         static_assert((std::is_same<C::pointer, min_pointer<C::value_type>>::value), "");
         static_assert((std::is_same<C::const_pointer, min_pointer<const C::value_type>>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+        static_assert(sizeof(C::size_type) == sizeof(std::size_t), "");
+#else
         static_assert((std::is_same<C::size_type, std::size_t>::value), "");
+#endif
         static_assert((std::is_same<C::difference_type, std::ptrdiff_t>::value), "");
     }
 #endif
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/allocator.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/allocator.pass.cpp
index af9dd01..ca7169e 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/allocator.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/allocator.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_copy.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_copy.pass.cpp
index 5f5cac2..6a2cd8e 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_copy.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_copy.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_init.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_init.pass.cpp
index 23ca1fc..7baf89a 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_init.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_init.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_move.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_move.pass.cpp
index 942ab86..94b78c7 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_move.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_move.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/copy.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/copy.pass.cpp
index 300a4db..d778861 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/copy.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/copy.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/copy_alloc.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/copy_alloc.pass.cpp
index 636f644..37d8ed6 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/copy_alloc.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/copy_alloc.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/default.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/default.pass.cpp
index 4546d59..220aa94 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/default.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/default.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/init.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/init.pass.cpp
index 3578d35..fbb39ea 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/init.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/init.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size.pass.cpp
index f16c232..e1331da 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash.pass.cpp
index 53bf195..2894700 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal.pass.cpp
index bd2c318..7644bd3 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal_allocator.pass.cpp
index d7c6935..ef79865 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal_allocator.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp
index 593ba0d..697ecf5 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/move_alloc.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/move_alloc.pass.cpp
index e528316..daa26f2 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/move_alloc.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/move_alloc.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/range.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/range.pass.cpp
index 1286eee..6f3caee 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/range.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/range.pass.cpp
@@ -24,7 +24,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size.pass.cpp
index 5fa494b..9538cde 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size.pass.cpp
@@ -24,7 +24,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash.pass.cpp
index bace36a..2b83cb0 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash.pass.cpp
@@ -25,7 +25,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash_equal.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash_equal.pass.cpp
index a97750e..cccd74b 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash_equal.pass.cpp
@@ -25,7 +25,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash_equal_allocator.pass.cpp
index 41f2e27..3675a24 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/range_size_hash_equal_allocator.pass.cpp
@@ -26,7 +26,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/size.fail.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/size.fail.cpp
index 1916b6b..61cfc5e 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/size.fail.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/size.fail.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/size.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/size.pass.cpp
index 4e99037..6ffdbfd 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/size.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/size.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash.pass.cpp
index 19f4440..c0ec5af 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash_equal.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash_equal.pass.cpp
index 59eba53..4d7b3f6 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash_equal.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash_equal_allocator.pass.cpp
index ca71ab3..9d913e7 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash_equal_allocator.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.multiset/unord.multiset.swap/swap_non_member.pass.cpp b/test/containers/unord/unord.multiset/unord.multiset.swap/swap_non_member.pass.cpp
index b75816a..c2e068e 100644
--- a/test/containers/unord/unord.multiset/unord.multiset.swap/swap_non_member.pass.cpp
+++ b/test/containers/unord/unord.multiset/unord.multiset.swap/swap_non_member.pass.cpp
@@ -21,7 +21,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/bucket.pass.cpp b/test/containers/unord/unord.set/bucket.pass.cpp
index b2bf2e1..0dae664 100644
--- a/test/containers/unord/unord.set/bucket.pass.cpp
+++ b/test/containers/unord/unord.set/bucket.pass.cpp
@@ -22,7 +22,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/bucket_count.pass.cpp b/test/containers/unord/unord.set/bucket_count.pass.cpp
index 649aaa1..caaa5a6 100644
--- a/test/containers/unord/unord.set/bucket_count.pass.cpp
+++ b/test/containers/unord/unord.set/bucket_count.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/bucket_size.pass.cpp b/test/containers/unord/unord.set/bucket_size.pass.cpp
index 26f05db..628d557 100644
--- a/test/containers/unord/unord.set/bucket_size.pass.cpp
+++ b/test/containers/unord/unord.set/bucket_size.pass.cpp
@@ -22,7 +22,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/clear.pass.cpp b/test/containers/unord/unord.set/clear.pass.cpp
index 1f97ab7..6da1530 100644
--- a/test/containers/unord/unord.set/clear.pass.cpp
+++ b/test/containers/unord/unord.set/clear.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/count.pass.cpp b/test/containers/unord/unord.set/count.pass.cpp
index d850a7e..83bb8aa 100644
--- a/test/containers/unord/unord.set/count.pass.cpp
+++ b/test/containers/unord/unord.set/count.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/db_iterators_7.pass.cpp b/test/containers/unord/unord.set/db_iterators_7.pass.cpp
index 3247f01..80b1a49 100644
--- a/test/containers/unord/unord.set/db_iterators_7.pass.cpp
+++ b/test/containers/unord/unord.set/db_iterators_7.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/db_iterators_8.pass.cpp b/test/containers/unord/unord.set/db_iterators_8.pass.cpp
index 4ee8883..8b266bb 100644
--- a/test/containers/unord/unord.set/db_iterators_8.pass.cpp
+++ b/test/containers/unord/unord.set/db_iterators_8.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/db_local_iterators_7.pass.cpp b/test/containers/unord/unord.set/db_local_iterators_7.pass.cpp
index e6df2a4..b9fcb8c 100644
--- a/test/containers/unord/unord.set/db_local_iterators_7.pass.cpp
+++ b/test/containers/unord/unord.set/db_local_iterators_7.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/db_local_iterators_8.pass.cpp b/test/containers/unord/unord.set/db_local_iterators_8.pass.cpp
index 0c5a167..74d131b 100644
--- a/test/containers/unord/unord.set/db_local_iterators_8.pass.cpp
+++ b/test/containers/unord/unord.set/db_local_iterators_8.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/emplace.pass.cpp b/test/containers/unord/unord.set/emplace.pass.cpp
index a6faecb..d105e7a 100644
--- a/test/containers/unord/unord.set/emplace.pass.cpp
+++ b/test/containers/unord/unord.set/emplace.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 
 #include "../../Emplaceable.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/emplace_hint.pass.cpp b/test/containers/unord/unord.set/emplace_hint.pass.cpp
index 0d8a57a..50b0035 100644
--- a/test/containers/unord/unord.set/emplace_hint.pass.cpp
+++ b/test/containers/unord/unord.set/emplace_hint.pass.cpp
@@ -24,7 +24,7 @@
 #include <cassert>
 
 #include "../../Emplaceable.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/eq.pass.cpp b/test/containers/unord/unord.set/eq.pass.cpp
index 7b5569e..54a9c2e 100644
--- a/test/containers/unord/unord.set/eq.pass.cpp
+++ b/test/containers/unord/unord.set/eq.pass.cpp
@@ -22,7 +22,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/equal_range_const.pass.cpp b/test/containers/unord/unord.set/equal_range_const.pass.cpp
index c64e0af..4168903 100644
--- a/test/containers/unord/unord.set/equal_range_const.pass.cpp
+++ b/test/containers/unord/unord.set/equal_range_const.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/equal_range_non_const.pass.cpp b/test/containers/unord/unord.set/equal_range_non_const.pass.cpp
index 6d7e044..5a55083 100644
--- a/test/containers/unord/unord.set/equal_range_non_const.pass.cpp
+++ b/test/containers/unord/unord.set/equal_range_non_const.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/erase_const_iter.pass.cpp b/test/containers/unord/unord.set/erase_const_iter.pass.cpp
index ff74601..3a9cb58 100644
--- a/test/containers/unord/unord.set/erase_const_iter.pass.cpp
+++ b/test/containers/unord/unord.set/erase_const_iter.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/erase_key.pass.cpp b/test/containers/unord/unord.set/erase_key.pass.cpp
index 187f118..d97374a 100644
--- a/test/containers/unord/unord.set/erase_key.pass.cpp
+++ b/test/containers/unord/unord.set/erase_key.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/erase_range.pass.cpp b/test/containers/unord/unord.set/erase_range.pass.cpp
index 98b7d4d..a8a9005 100644
--- a/test/containers/unord/unord.set/erase_range.pass.cpp
+++ b/test/containers/unord/unord.set/erase_range.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/find_const.pass.cpp b/test/containers/unord/unord.set/find_const.pass.cpp
index ca8b9e6..e2238e5 100644
--- a/test/containers/unord/unord.set/find_const.pass.cpp
+++ b/test/containers/unord/unord.set/find_const.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/find_non_const.pass.cpp b/test/containers/unord/unord.set/find_non_const.pass.cpp
index a2ab804..8afe32a 100644
--- a/test/containers/unord/unord.set/find_non_const.pass.cpp
+++ b/test/containers/unord/unord.set/find_non_const.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/insert_const_lvalue.pass.cpp b/test/containers/unord/unord.set/insert_const_lvalue.pass.cpp
index b5d2733..321e905 100644
--- a/test/containers/unord/unord.set/insert_const_lvalue.pass.cpp
+++ b/test/containers/unord/unord.set/insert_const_lvalue.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/insert_hint_const_lvalue.pass.cpp b/test/containers/unord/unord.set/insert_hint_const_lvalue.pass.cpp
index c195e52..1393f54 100644
--- a/test/containers/unord/unord.set/insert_hint_const_lvalue.pass.cpp
+++ b/test/containers/unord/unord.set/insert_hint_const_lvalue.pass.cpp
@@ -22,7 +22,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/insert_hint_rvalue.pass.cpp b/test/containers/unord/unord.set/insert_hint_rvalue.pass.cpp
index ff7d742..f612ec5 100644
--- a/test/containers/unord/unord.set/insert_hint_rvalue.pass.cpp
+++ b/test/containers/unord/unord.set/insert_hint_rvalue.pass.cpp
@@ -23,7 +23,7 @@
 #include <cassert>
 
 #include "../../MoveOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/insert_init.pass.cpp b/test/containers/unord/unord.set/insert_init.pass.cpp
index 18a97a1..2d8eafb 100644
--- a/test/containers/unord/unord.set/insert_init.pass.cpp
+++ b/test/containers/unord/unord.set/insert_init.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/insert_range.pass.cpp b/test/containers/unord/unord.set/insert_range.pass.cpp
index aa3b38b..72a83ab 100644
--- a/test/containers/unord/unord.set/insert_range.pass.cpp
+++ b/test/containers/unord/unord.set/insert_range.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 
 #include "test_iterators.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/insert_rvalue.pass.cpp b/test/containers/unord/unord.set/insert_rvalue.pass.cpp
index 9ed2cda..d62308e 100644
--- a/test/containers/unord/unord.set/insert_rvalue.pass.cpp
+++ b/test/containers/unord/unord.set/insert_rvalue.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 
 #include "../../MoveOnly.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/iterators.pass.cpp b/test/containers/unord/unord.set/iterators.pass.cpp
index 7bb9770..d88310e 100644
--- a/test/containers/unord/unord.set/iterators.pass.cpp
+++ b/test/containers/unord/unord.set/iterators.pass.cpp
@@ -23,7 +23,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/load_factor.pass.cpp b/test/containers/unord/unord.set/load_factor.pass.cpp
index 959f384..e0ed169 100644
--- a/test/containers/unord/unord.set/load_factor.pass.cpp
+++ b/test/containers/unord/unord.set/load_factor.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 #include <cfloat>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/local_iterators.pass.cpp b/test/containers/unord/unord.set/local_iterators.pass.cpp
index 5b82228..2ffd93f 100644
--- a/test/containers/unord/unord.set/local_iterators.pass.cpp
+++ b/test/containers/unord/unord.set/local_iterators.pass.cpp
@@ -23,7 +23,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/max_bucket_count.pass.cpp b/test/containers/unord/unord.set/max_bucket_count.pass.cpp
index 80398b8..8b5e265 100644
--- a/test/containers/unord/unord.set/max_bucket_count.pass.cpp
+++ b/test/containers/unord/unord.set/max_bucket_count.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/max_load_factor.pass.cpp b/test/containers/unord/unord.set/max_load_factor.pass.cpp
index 982c6b5..d326f4a 100644
--- a/test/containers/unord/unord.set/max_load_factor.pass.cpp
+++ b/test/containers/unord/unord.set/max_load_factor.pass.cpp
@@ -23,7 +23,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/max_size.pass.cpp b/test/containers/unord/unord.set/max_size.pass.cpp
index 43d66bb..1c6e741 100644
--- a/test/containers/unord/unord.set/max_size.pass.cpp
+++ b/test/containers/unord/unord.set/max_size.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/rehash.pass.cpp b/test/containers/unord/unord.set/rehash.pass.cpp
index bf4d317..30fffa5 100644
--- a/test/containers/unord/unord.set/rehash.pass.cpp
+++ b/test/containers/unord/unord.set/rehash.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(const C& c)
diff --git a/test/containers/unord/unord.set/reserve.pass.cpp b/test/containers/unord/unord.set/reserve.pass.cpp
index 525f943..7d6656a 100644
--- a/test/containers/unord/unord.set/reserve.pass.cpp
+++ b/test/containers/unord/unord.set/reserve.pass.cpp
@@ -18,7 +18,7 @@
 #include <unordered_set>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class C>
 void test(const C& c)
diff --git a/test/containers/unord/unord.set/swap_member.pass.cpp b/test/containers/unord/unord.set/swap_member.pass.cpp
index 9a972b7..4497606 100644
--- a/test/containers/unord/unord.set/swap_member.pass.cpp
+++ b/test/containers/unord/unord.set/swap_member.pass.cpp
@@ -21,7 +21,7 @@
 #include "../../test_compare.h"
 #include "../../test_hash.h"
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/types.pass.cpp b/test/containers/unord/unord.set/types.pass.cpp
index 11d992f..d315a86 100644
--- a/test/containers/unord/unord.set/types.pass.cpp
+++ b/test/containers/unord/unord.set/types.pass.cpp
@@ -30,7 +30,8 @@
 #include <unordered_set>
 #include <type_traits>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
+#include "powerpc-darwin.h"
 
 int main()
 {
@@ -45,7 +46,11 @@ int main()
         static_assert((std::is_same<C::const_reference, const C::value_type&>::value), "");
         static_assert((std::is_same<C::pointer, C::value_type*>::value), "");
         static_assert((std::is_same<C::const_pointer, const C::value_type*>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+        static_assert(sizeof(C::size_type) == sizeof(std::size_t), "");
+#else
         static_assert((std::is_same<C::size_type, std::size_t>::value), "");
+#endif
         static_assert((std::is_same<C::difference_type, std::ptrdiff_t>::value), "");
     }
 #if __cplusplus >= 201103L
@@ -61,7 +66,11 @@ int main()
         static_assert((std::is_same<C::const_reference, const C::value_type&>::value), "");
         static_assert((std::is_same<C::pointer, min_pointer<C::value_type>>::value), "");
         static_assert((std::is_same<C::const_pointer, min_pointer<const C::value_type>>::value), "");
+#ifdef	PTRDIFF_T_VS_SIZE_T_DIFFER
+        static_assert(sizeof(C::size_type) == sizeof(std::size_t), "");
+#else
         static_assert((std::is_same<C::size_type, std::size_t>::value), "");
+#endif
         static_assert((std::is_same<C::difference_type, std::ptrdiff_t>::value), "");
     }
 #endif
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/allocator.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/allocator.pass.cpp
index 5d7897b..3e22134 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/allocator.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/allocator.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/assign_copy.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/assign_copy.pass.cpp
index e7fa903..e53656a 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/assign_copy.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/assign_copy.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/assign_init.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/assign_init.pass.cpp
index 256f444..55c8df6 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/assign_init.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/assign_init.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/assign_move.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/assign_move.pass.cpp
index a197fca..50ce419 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/assign_move.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/assign_move.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/copy.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/copy.pass.cpp
index 7fe0e15..dbed56c 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/copy.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/copy.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/copy_alloc.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/copy_alloc.pass.cpp
index 67995b3..4265e30 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/copy_alloc.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/copy_alloc.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/default.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/default.pass.cpp
index e53264f..6eaa8c2 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/default.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/default.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/init.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/init.pass.cpp
index fcee400..8e5938e 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/init.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/init.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/init_size.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/init_size.pass.cpp
index 3cc3cf0..4872bab 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/init_size.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/init_size.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash.pass.cpp
index 9dc61fb..2905c04 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal.pass.cpp
index a191c7c..04c7b8a 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal_allocator.pass.cpp
index 4a1fc6c..e8875ab 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal_allocator.pass.cpp
@@ -23,7 +23,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp
index 3f1685c..11191a1 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/move_alloc.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/move_alloc.pass.cpp
index 1e58dbd..c977057 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/move_alloc.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/move_alloc.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/range.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/range.pass.cpp
index d0166fa..24a6e35 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/range.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/range.pass.cpp
@@ -24,7 +24,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/range_size.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/range_size.pass.cpp
index 87e62a0..e4ed134 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/range_size.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/range_size.pass.cpp
@@ -24,7 +24,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash.pass.cpp
index 6f6f178..b0e568a 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash.pass.cpp
@@ -25,7 +25,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash_equal.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash_equal.pass.cpp
index ac2aafd..90c419b 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash_equal.pass.cpp
@@ -25,7 +25,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash_equal_allocator.pass.cpp
index 5a051e8..0f89258 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/range_size_hash_equal_allocator.pass.cpp
@@ -26,7 +26,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/size.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/size.pass.cpp
index fe01966..450f2dd 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/size.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/size.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/size_hash.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/size_hash.pass.cpp
index 2bda6cc..b2b7da7 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/size_hash.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/size_hash.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/size_hash_equal.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/size_hash_equal.pass.cpp
index bd5e754..9a52988 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/size_hash_equal.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/size_hash_equal.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.cnstr/size_hash_equal_allocator.pass.cpp b/test/containers/unord/unord.set/unord.set.cnstr/size_hash_equal_allocator.pass.cpp
index e3378ce..d20e03f 100644
--- a/test/containers/unord/unord.set/unord.set.cnstr/size_hash_equal_allocator.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.cnstr/size_hash_equal_allocator.pass.cpp
@@ -22,7 +22,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/containers/unord/unord.set/unord.set.swap/swap_non_member.pass.cpp b/test/containers/unord/unord.set/unord.set.swap/swap_non_member.pass.cpp
index 57899ae..f529ad6 100644
--- a/test/containers/unord/unord.set/unord.set.swap/swap_non_member.pass.cpp
+++ b/test/containers/unord/unord.set/unord.set.swap/swap_non_member.pass.cpp
@@ -21,7 +21,7 @@
 #include "../../../test_compare.h"
 #include "../../../test_hash.h"
 #include "../../../test_allocator.h"
-#include "../../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/language.support/support.limits/limits/numeric.limits.members/is_iec559.pass.cpp b/test/language.support/support.limits/limits/numeric.limits.members/is_iec559.pass.cpp
index f6b8682..1b73bda 100644
--- a/test/language.support/support.limits/limits/numeric.limits.members/is_iec559.pass.cpp
+++ b/test/language.support/support.limits/limits/numeric.limits.members/is_iec559.pass.cpp
@@ -44,5 +44,9 @@ int main()
     test<unsigned long long, false>();
     test<float, true>();
     test<double, true>();
+#if (defined(__ppc__) || defined(__ppc64__))
+    test<long double, false>();
+#else
     test<long double, true>();
+#endif
 }
diff --git a/test/language.support/support.limits/limits/numeric.limits.members/traps.pass.cpp b/test/language.support/support.limits/limits/numeric.limits.members/traps.pass.cpp
index 611ce56..fbf292b 100644
--- a/test/language.support/support.limits/limits/numeric.limits.members/traps.pass.cpp
+++ b/test/language.support/support.limits/limits/numeric.limits.members/traps.pass.cpp
@@ -23,25 +23,32 @@ test()
     static_assert(std::numeric_limits<const volatile T>::traps == expected, "traps test 4");
 }
 
+// see <limits>:
+#if	(defined(__i386__) || defined(__x86_64__))
+static const bool is_x86 = true;
+#else
+static const bool is_x86 = false;
+#endif
+
 int main()
 {
     test<bool, false>();
-    test<char, true>();
-    test<signed char, true>();
-    test<unsigned char, true>();
-    test<wchar_t, true>();
+    test<char, is_x86>();
+    test<signed char, is_x86>();
+    test<unsigned char, is_x86>();
+    test<wchar_t, is_x86>();
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
-    test<char16_t, true>();
-    test<char32_t, true>();
+    test<char16_t, is_x86>();
+    test<char32_t, is_x86>();
 #endif  // _LIBCPP_HAS_NO_UNICODE_CHARS
-    test<short, true>();
-    test<unsigned short, true>();
-    test<int, true>();
-    test<unsigned int, true>();
-    test<long, true>();
-    test<unsigned long, true>();
-    test<long long, true>();
-    test<unsigned long long, true>();
+    test<short, is_x86>();
+    test<unsigned short, is_x86>();
+    test<int, is_x86>();
+    test<unsigned int, is_x86>();
+    test<long, is_x86>();
+    test<unsigned long, is_x86>();
+    test<long long, is_x86>();
+    test<unsigned long long, is_x86>();
     test<float, false>();
     test<double, false>();
     test<long double, false>();
diff --git a/test/lit.cfg b/test/lit.cfg
index aa45439..bf2ee2c 100644
--- a/test/lit.cfg
+++ b/test/lit.cfg
@@ -181,10 +181,11 @@ if cxx_under_test is None:
     cxx_under_test = getattr(config, 'cxx_under_test', None)
 
     # If no specific cxx_under_test was given, attempt to infer it as clang++.
-    clangxx = lit.util.which('clang++', config.environment['PATH'])
-    if clangxx is not None:
-        cxx_under_test = clangxx
-        lit_config.note("inferred cxx_under_test as: %r" % (cxx_under_test,))
+    if cxx_under_test is None:
+        clangxx = lit.util.which('clang++', config.environment['PATH'])
+        if clangxx is not None:
+            cxx_under_test = clangxx
+    lit_config.note("inferred cxx_under_test as: %r" % (cxx_under_test,))
 if cxx_under_test is None:
     lit_config.fatal('must specify user parameter cxx_under_test '
                      '(e.g., --param=cxx_under_test=clang++)')
@@ -213,6 +214,19 @@ if cxx_has_stdcxx0x_flag_str is not None:
 else:
     cxx_has_stdcxx0x_flag = getattr(config, 'cxx_has_stdcxx0x_flag', True)
 
+# global linker flags, like -B
+exe_linker_flags = lit_config.params.get('exe_linker_flags', None)
+if exe_linker_flags is None:
+    exe_linker_flags = getattr(config, 'exe_linker_flags', '')
+exe_linker_flags = exe_linker_flags.split(' ')
+lit_config.note("inferred exe_linker_flags as: %r" % (exe_linker_flags,))
+
+cxx_flags = lit_config.params.get('cxx_flags', None)
+if cxx_flags is None:
+    cxx_flags = getattr(config, 'cxx_flags', '')
+cxx_flags = cxx_flags.split(' ')
+lit_config.note("inferred cxx_flags as: %r" % (cxx_flags,))
+
 # This test suite supports testing against either the system library or the
 # locally built one; the former mode is useful for testing ABI compatibility
 # between the current headers and a shipping dynamic library.
@@ -247,7 +261,33 @@ if link_flags_str is None:
         lit_config.fatal('C++ ABI setting %s unsupported for tests' % cxx_abi)
 
       if sys.platform == 'darwin':
+        # need libgcc_s for libunwind
+        darwin_vers = int(platform.release().split('.')[0])
+        osx_vers_maj = '.'.join(platform.mac_ver()[0].split('.')[0:2])
+        if darwin_vers < 10:
+          link_flags += ['.'.join(['-lgcc_s', osx_vers_maj])]
+        elif darwin_vers < 11:
+          link_flags += ['-lgcc_s.1']
+        # need libclang_rt for eprintf
+        arch = platform.processor()
+        if arch == 'powerpc':
+          arch = 'ppc'
+        libcrt = '.'.join(['libclang_rt', arch, 'a'])
+        cmd = [cxx_under_test, '-print-search-dirs']
+        p = subprocess.Popen(cmd, stdout=subprocess.PIPE)
+        out,err = p.communicate()
+        exitCode = p.wait()
+        # should probably check exitCode
+        for l in out.splitlines():
+          ll = l.split(' ')
+          if ll[0] == 'libraries:':
+            crt_libdir = ll[1][1:]
+        
+        link_flags += [os.path.join(crt_libdir, 'lib', sys.platform, libcrt)]
         link_flags += ['-lSystem']
+        # better yet, test existence of SystemStubs
+        if darwin_vers < 11:
+          link_flags += ['-lSystemStubs']
       elif sys.platform == 'linux2':
         link_flags += [ '-lgcc_eh', '-lc', '-lm', '-lpthread',
               '-lrt', '-lgcc_s']
@@ -281,8 +321,8 @@ else:
 
 config.test_format = LibcxxTestFormat(
     cxx_under_test,
-    cpp_flags = ['-nostdinc++'] + compile_flags + include_paths,
-    ld_flags = ['-nodefaultlibs'] + library_paths + ['-lc++'] + link_flags,
+    cpp_flags = cxx_flags + ['-nostdinc++'] + compile_flags + include_paths,
+    ld_flags = exe_linker_flags + ['-nodefaultlibs'] + library_paths + ['-lc++'] + link_flags,
     exec_env = exec_env)
 
 # Get or infer the target triple.
diff --git a/test/lit.site.cfg.in b/test/lit.site.cfg.in
index 5343eda..56068c2 100644
--- a/test/lit.site.cfg.in
+++ b/test/lit.site.cfg.in
@@ -6,6 +6,9 @@ config.libcxx_obj_root       = "@LIBCXX_BINARY_DIR@"
 config.python_executable     = "@PYTHON_EXECUTABLE@"
 config.enable_shared         = @LIBCXX_ENABLE_SHARED@
 config.cxx_abi               = "@LIBCXX_CXX_ABI@"
+# use same options used to build libc++
+config.exe_linker_flags      = "@CMAKE_EXE_LINKER_FLAGS@"
+config.cxx_flags             = "@CMAKE_CXX_FLAGS@"
 
 # Let the main config do the real work.
 lit_config.load_config(config, "@LIBCXX_SOURCE_DIR@/test/lit.cfg")
diff --git a/test/strings/basic.string/min_allocator.h b/test/strings/basic.string/min_allocator.h
deleted file mode 100644
index c0d28e5..0000000
--- a/test/strings/basic.string/min_allocator.h
+++ /dev/null
@@ -1,252 +0,0 @@
-#ifndef MIN_ALLOCATOR_H
-#define MIN_ALLOCATOR_H
-
-#if __cplusplus >= 201103L
-
-#include <memory>
-
-template <class T> class min_pointer;
-template <class T> class min_pointer<const T>;
-template <> class min_pointer<void>;
-template <> class min_pointer<const void>;
-template <class T> class min_allocator;
-
-template <>
-class min_pointer<const void>
-{
-    const void* ptr_;
-public:
-    min_pointer() noexcept = default;
-    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
-    template <class T>
-    min_pointer(min_pointer<T> p) : ptr_(p.ptr_) {}
-
-    explicit operator bool() const {return ptr_ != nullptr;}
-
-    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
-    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
-    template <class U> friend class min_pointer;
-};
-
-template <>
-class min_pointer<void>
-{
-    void* ptr_;
-public:
-    min_pointer() noexcept = default;
-    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
-    template <class T,
-              class = typename std::enable_if
-                       <
-                            !std::is_const<T>::value
-                       >::type
-             >
-    min_pointer(min_pointer<T> p) : ptr_(p.ptr_) {}
-
-    explicit operator bool() const {return ptr_ != nullptr;}
-
-    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
-    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
-    template <class U> friend class min_pointer;
-};
-
-template <class T>
-class min_pointer
-{
-    T* ptr_;
-
-    explicit min_pointer(T* p) : ptr_(p) {}
-public:
-    min_pointer() noexcept = default;
-    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
-    explicit min_pointer(min_pointer<void> p) : ptr_(static_cast<T*>(p.ptr_)) {}
-
-    explicit operator bool() const {return ptr_ != nullptr;}
-    
-    typedef std::ptrdiff_t difference_type;
-    typedef T& reference;
-    typedef T* pointer;
-    typedef T value_type;
-    typedef std::random_access_iterator_tag iterator_category;
-
-    reference operator*() const {return *ptr_;}
-    pointer operator->() const {return ptr_;}
-
-    min_pointer& operator++() {++ptr_; return *this;}
-    min_pointer operator++(int) {min_pointer tmp(*this); ++ptr_; return tmp;}
-
-    min_pointer& operator--() {--ptr_; return *this;}
-    min_pointer operator--(int) {min_pointer tmp(*this); --ptr_; return tmp;}
-
-    min_pointer& operator+=(difference_type n) {ptr_ += n; return *this;}
-    min_pointer& operator-=(difference_type n) {ptr_ -= n; return *this;}
-
-    min_pointer operator+(difference_type n) const
-    {
-        min_pointer tmp(*this);
-        tmp += n;
-        return tmp;
-    }
-
-    friend min_pointer operator+(difference_type n, min_pointer x)
-    {
-        return x + n;
-    }
-
-    min_pointer operator-(difference_type n) const
-    {
-        min_pointer tmp(*this);
-        tmp -= n;
-        return tmp;
-    }
-
-    friend difference_type operator-(min_pointer x, min_pointer y)
-    {
-        return x.ptr_ - y.ptr_;
-    }
-
-    reference operator[](difference_type n) const {return ptr_[n];}
-
-    friend bool operator< (min_pointer x, min_pointer y) {return x.ptr_ < y.ptr_;}
-    friend bool operator> (min_pointer x, min_pointer y) {return y < x;}
-    friend bool operator<=(min_pointer x, min_pointer y) {return !(y < x);}
-    friend bool operator>=(min_pointer x, min_pointer y) {return !(x < y);}
-
-    static min_pointer pointer_to(T& t) {return min_pointer(std::addressof(t));}
-
-    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
-    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
-    template <class U> friend class min_pointer;
-    template <class U> friend class min_allocator;
-};
-
-template <class T>
-class min_pointer<const T>
-{
-    const T* ptr_;
-
-    explicit min_pointer(const T* p) : ptr_(p) {}
-public:
-    min_pointer() noexcept = default;
-    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
-    min_pointer(min_pointer<T> p) : ptr_(p.ptr_) {}
-    explicit min_pointer(min_pointer<const void> p) : ptr_(static_cast<const T*>(p.ptr_)) {}
-
-    explicit operator bool() const {return ptr_ != nullptr;}
-
-    typedef std::ptrdiff_t difference_type;
-    typedef const T& reference;
-    typedef const T* pointer;
-    typedef const T value_type;
-    typedef std::random_access_iterator_tag iterator_category;
-
-    reference operator*() const {return *ptr_;}
-    pointer operator->() const {return ptr_;}
-
-    min_pointer& operator++() {++ptr_; return *this;}
-    min_pointer operator++(int) {min_pointer tmp(*this); ++ptr_; return tmp;}
-
-    min_pointer& operator--() {--ptr_; return *this;}
-    min_pointer operator--(int) {min_pointer tmp(*this); --ptr_; return tmp;}
-
-    min_pointer& operator+=(difference_type n) {ptr_ += n; return *this;}
-    min_pointer& operator-=(difference_type n) {ptr_ -= n; return *this;}
-
-    min_pointer operator+(difference_type n) const
-    {
-        min_pointer tmp(*this);
-        tmp += n;
-        return tmp;
-    }
-
-    friend min_pointer operator+(difference_type n, min_pointer x)
-    {
-        return x + n;
-    }
-
-    min_pointer operator-(difference_type n) const
-    {
-        min_pointer tmp(*this);
-        tmp -= n;
-        return tmp;
-    }
-
-    friend difference_type operator-(min_pointer x, min_pointer y)
-    {
-        return x.ptr_ - y.ptr_;
-    }
-
-    reference operator[](difference_type n) const {return ptr_[n];}
-
-    friend bool operator< (min_pointer x, min_pointer y) {return x.ptr_ < y.ptr_;}
-    friend bool operator> (min_pointer x, min_pointer y) {return y < x;}
-    friend bool operator<=(min_pointer x, min_pointer y) {return !(y < x);}
-    friend bool operator>=(min_pointer x, min_pointer y) {return !(x < y);}
-
-    static min_pointer pointer_to(const T& t) {return min_pointer(std::addressof(t));}
-
-    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
-    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
-    template <class U> friend class min_pointer;
-};
-
-template <class T>
-inline
-bool
-operator==(min_pointer<T> x, std::nullptr_t)
-{
-    return !static_cast<bool>(x);
-}
-
-template <class T>
-inline
-bool
-operator==(std::nullptr_t, min_pointer<T> x)
-{
-    return !static_cast<bool>(x);
-}
-
-template <class T>
-inline
-bool
-operator!=(min_pointer<T> x, std::nullptr_t)
-{
-    return static_cast<bool>(x);
-}
-
-template <class T>
-inline
-bool
-operator!=(std::nullptr_t, min_pointer<T> x)
-{
-    return static_cast<bool>(x);
-}
-
-template <class T>
-class min_allocator
-{
-public:
-    typedef T value_type;
-    typedef min_pointer<T> pointer;
-
-    min_allocator() = default;
-    template <class U>
-    min_allocator(min_allocator<U>) {}
-
-    pointer allocate(std::ptrdiff_t n)
-    {
-        return pointer(static_cast<T*>(::operator new(n*sizeof(T))));
-    }
-
-    void deallocate(pointer p, std::ptrdiff_t)
-    {
-        return ::operator delete(p.ptr_);
-    }
-
-    friend bool operator==(min_allocator, min_allocator) {return true;}
-    friend bool operator!=(min_allocator x, min_allocator y) {return !(x == y);}
-};
-
-#endif  // __cplusplus >= 201103L
-
-#endif  // MIN_ALLOCATOR_H
diff --git a/test/strings/basic.string/string.access/at.pass.cpp b/test/strings/basic.string/string.access/at.pass.cpp
index e24b560..8fada8f 100644
--- a/test/strings/basic.string/string.access/at.pass.cpp
+++ b/test/strings/basic.string/string.access/at.pass.cpp
@@ -16,7 +16,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.access/back.pass.cpp b/test/strings/basic.string/string.access/back.pass.cpp
index ed0d327..e915214 100644
--- a/test/strings/basic.string/string.access/back.pass.cpp
+++ b/test/strings/basic.string/string.access/back.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.access/db_back.pass.cpp b/test/strings/basic.string/string.access/db_back.pass.cpp
index b153249..2b31fab 100644
--- a/test/strings/basic.string/string.access/db_back.pass.cpp
+++ b/test/strings/basic.string/string.access/db_back.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.access/db_cback.pass.cpp b/test/strings/basic.string/string.access/db_cback.pass.cpp
index ece27a6..7feb423 100644
--- a/test/strings/basic.string/string.access/db_cback.pass.cpp
+++ b/test/strings/basic.string/string.access/db_cback.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.access/db_cfront.pass.cpp b/test/strings/basic.string/string.access/db_cfront.pass.cpp
index d36885e..9f7785b 100644
--- a/test/strings/basic.string/string.access/db_cfront.pass.cpp
+++ b/test/strings/basic.string/string.access/db_cfront.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.access/db_cindex.pass.cpp b/test/strings/basic.string/string.access/db_cindex.pass.cpp
index 385c219..6294200 100644
--- a/test/strings/basic.string/string.access/db_cindex.pass.cpp
+++ b/test/strings/basic.string/string.access/db_cindex.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.access/db_front.pass.cpp b/test/strings/basic.string/string.access/db_front.pass.cpp
index 15985fa..ff675bc 100644
--- a/test/strings/basic.string/string.access/db_front.pass.cpp
+++ b/test/strings/basic.string/string.access/db_front.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.access/db_index.pass.cpp b/test/strings/basic.string/string.access/db_index.pass.cpp
index 82b1190..b20e201 100644
--- a/test/strings/basic.string/string.access/db_index.pass.cpp
+++ b/test/strings/basic.string/string.access/db_index.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.access/front.pass.cpp b/test/strings/basic.string/string.access/front.pass.cpp
index 807e936..ed80916 100644
--- a/test/strings/basic.string/string.access/front.pass.cpp
+++ b/test/strings/basic.string/string.access/front.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.access/index.pass.cpp b/test/strings/basic.string/string.access/index.pass.cpp
index 567eeee..cd31623 100644
--- a/test/strings/basic.string/string.access/index.pass.cpp
+++ b/test/strings/basic.string/string.access/index.pass.cpp
@@ -19,7 +19,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.capacity/capacity.pass.cpp b/test/strings/basic.string/string.capacity/capacity.pass.cpp
index 22ca1f3..4a447d5 100644
--- a/test/strings/basic.string/string.capacity/capacity.pass.cpp
+++ b/test/strings/basic.string/string.capacity/capacity.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.capacity/clear.pass.cpp b/test/strings/basic.string/string.capacity/clear.pass.cpp
index ba8ba24..b73af75 100644
--- a/test/strings/basic.string/string.capacity/clear.pass.cpp
+++ b/test/strings/basic.string/string.capacity/clear.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.capacity/empty.pass.cpp b/test/strings/basic.string/string.capacity/empty.pass.cpp
index 29f62cd..ac65f51 100644
--- a/test/strings/basic.string/string.capacity/empty.pass.cpp
+++ b/test/strings/basic.string/string.capacity/empty.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.capacity/length.pass.cpp b/test/strings/basic.string/string.capacity/length.pass.cpp
index 5ddb5c1..d3ae1aa 100644
--- a/test/strings/basic.string/string.capacity/length.pass.cpp
+++ b/test/strings/basic.string/string.capacity/length.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.capacity/max_size.pass.cpp b/test/strings/basic.string/string.capacity/max_size.pass.cpp
index 0fe7f12..e6a3aa4 100644
--- a/test/strings/basic.string/string.capacity/max_size.pass.cpp
+++ b/test/strings/basic.string/string.capacity/max_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.capacity/reserve.pass.cpp b/test/strings/basic.string/string.capacity/reserve.pass.cpp
index 6fdb457..a155825 100644
--- a/test/strings/basic.string/string.capacity/reserve.pass.cpp
+++ b/test/strings/basic.string/string.capacity/reserve.pass.cpp
@@ -15,7 +15,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.capacity/resize_size.pass.cpp b/test/strings/basic.string/string.capacity/resize_size.pass.cpp
index d1b66a4..14fe209 100644
--- a/test/strings/basic.string/string.capacity/resize_size.pass.cpp
+++ b/test/strings/basic.string/string.capacity/resize_size.pass.cpp
@@ -15,7 +15,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.capacity/resize_size_char.pass.cpp b/test/strings/basic.string/string.capacity/resize_size_char.pass.cpp
index 9fb0c8c..f293df9 100644
--- a/test/strings/basic.string/string.capacity/resize_size_char.pass.cpp
+++ b/test/strings/basic.string/string.capacity/resize_size_char.pass.cpp
@@ -15,7 +15,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.capacity/shrink_to_fit.pass.cpp b/test/strings/basic.string/string.capacity/shrink_to_fit.pass.cpp
index 310ccec..aacbffd 100644
--- a/test/strings/basic.string/string.capacity/shrink_to_fit.pass.cpp
+++ b/test/strings/basic.string/string.capacity/shrink_to_fit.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.capacity/size.pass.cpp b/test/strings/basic.string/string.capacity/size.pass.cpp
index 9d51ca1..21b475a 100644
--- a/test/strings/basic.string/string.capacity/size.pass.cpp
+++ b/test/strings/basic.string/string.capacity/size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.cons/alloc.pass.cpp b/test/strings/basic.string/string.cons/alloc.pass.cpp
index 3a8c571..b15b569 100644
--- a/test/strings/basic.string/string.cons/alloc.pass.cpp
+++ b/test/strings/basic.string/string.cons/alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.cons/char_assignment.pass.cpp b/test/strings/basic.string/string.cons/char_assignment.pass.cpp
index 4d750d8..1c582bc 100644
--- a/test/strings/basic.string/string.cons/char_assignment.pass.cpp
+++ b/test/strings/basic.string/string.cons/char_assignment.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.cons/copy.pass.cpp b/test/strings/basic.string/string.cons/copy.pass.cpp
index 3ebb228..fb6001f 100644
--- a/test/strings/basic.string/string.cons/copy.pass.cpp
+++ b/test/strings/basic.string/string.cons/copy.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.cons/copy_alloc.pass.cpp b/test/strings/basic.string/string.cons/copy_alloc.pass.cpp
index 693ecf3..d18241e 100644
--- a/test/strings/basic.string/string.cons/copy_alloc.pass.cpp
+++ b/test/strings/basic.string/string.cons/copy_alloc.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.cons/copy_assignment.pass.cpp b/test/strings/basic.string/string.cons/copy_assignment.pass.cpp
index 10c49e5..ccb6c59 100644
--- a/test/strings/basic.string/string.cons/copy_assignment.pass.cpp
+++ b/test/strings/basic.string/string.cons/copy_assignment.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.cons/initializer_list.pass.cpp b/test/strings/basic.string/string.cons/initializer_list.pass.cpp
index 7654901..60e62cc 100644
--- a/test/strings/basic.string/string.cons/initializer_list.pass.cpp
+++ b/test/strings/basic.string/string.cons/initializer_list.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.cons/initializer_list_assignment.pass.cpp b/test/strings/basic.string/string.cons/initializer_list_assignment.pass.cpp
index 6bbf51a..7530768 100644
--- a/test/strings/basic.string/string.cons/initializer_list_assignment.pass.cpp
+++ b/test/strings/basic.string/string.cons/initializer_list_assignment.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.cons/iter_alloc.pass.cpp b/test/strings/basic.string/string.cons/iter_alloc.pass.cpp
index ebd0974..11f2b43 100644
--- a/test/strings/basic.string/string.cons/iter_alloc.pass.cpp
+++ b/test/strings/basic.string/string.cons/iter_alloc.pass.cpp
@@ -19,7 +19,7 @@
 
 #include "../test_allocator.h"
 #include "../input_iterator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class It>
 void
diff --git a/test/strings/basic.string/string.cons/move.pass.cpp b/test/strings/basic.string/string.cons/move.pass.cpp
index ba68087..873e889 100644
--- a/test/strings/basic.string/string.cons/move.pass.cpp
+++ b/test/strings/basic.string/string.cons/move.pass.cpp
@@ -17,7 +17,7 @@
 #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.cons/move_alloc.pass.cpp b/test/strings/basic.string/string.cons/move_alloc.pass.cpp
index 80aadcb..1f0d5cd 100644
--- a/test/strings/basic.string/string.cons/move_alloc.pass.cpp
+++ b/test/strings/basic.string/string.cons/move_alloc.pass.cpp
@@ -17,7 +17,7 @@
 #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 
 template <class S>
diff --git a/test/strings/basic.string/string.cons/move_assignment.pass.cpp b/test/strings/basic.string/string.cons/move_assignment.pass.cpp
index 3e6626b..60de3b0 100644
--- a/test/strings/basic.string/string.cons/move_assignment.pass.cpp
+++ b/test/strings/basic.string/string.cons/move_assignment.pass.cpp
@@ -18,7 +18,7 @@
 #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.cons/pointer_alloc.pass.cpp b/test/strings/basic.string/string.cons/pointer_alloc.pass.cpp
index befb143..8aa88c9 100644
--- a/test/strings/basic.string/string.cons/pointer_alloc.pass.cpp
+++ b/test/strings/basic.string/string.cons/pointer_alloc.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class charT>
 void
diff --git a/test/strings/basic.string/string.cons/pointer_assignment.pass.cpp b/test/strings/basic.string/string.cons/pointer_assignment.pass.cpp
index d035837..c691613 100644
--- a/test/strings/basic.string/string.cons/pointer_assignment.pass.cpp
+++ b/test/strings/basic.string/string.cons/pointer_assignment.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.cons/pointer_size_alloc.pass.cpp b/test/strings/basic.string/string.cons/pointer_size_alloc.pass.cpp
index dbfcec7..629e296 100644
--- a/test/strings/basic.string/string.cons/pointer_size_alloc.pass.cpp
+++ b/test/strings/basic.string/string.cons/pointer_size_alloc.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class charT>
 void
diff --git a/test/strings/basic.string/string.cons/size_char_alloc.pass.cpp b/test/strings/basic.string/string.cons/size_char_alloc.pass.cpp
index a427d72..a8e6fdf 100644
--- a/test/strings/basic.string/string.cons/size_char_alloc.pass.cpp
+++ b/test/strings/basic.string/string.cons/size_char_alloc.pass.cpp
@@ -17,7 +17,7 @@
 #include <cassert>
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class charT>
 void
diff --git a/test/strings/basic.string/string.cons/substr.pass.cpp b/test/strings/basic.string/string.cons/substr.pass.cpp
index 1607211..3e04a97 100644
--- a/test/strings/basic.string/string.cons/substr.pass.cpp
+++ b/test/strings/basic.string/string.cons/substr.pass.cpp
@@ -19,7 +19,7 @@
 #include <cassert>
 
 #include "../test_allocator.h"
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.iterators/begin.pass.cpp b/test/strings/basic.string/string.iterators/begin.pass.cpp
index fddd6e6..55f2eb3 100644
--- a/test/strings/basic.string/string.iterators/begin.pass.cpp
+++ b/test/strings/basic.string/string.iterators/begin.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.iterators/cbegin.pass.cpp b/test/strings/basic.string/string.iterators/cbegin.pass.cpp
index 9a9f042..d0c6ddb 100644
--- a/test/strings/basic.string/string.iterators/cbegin.pass.cpp
+++ b/test/strings/basic.string/string.iterators/cbegin.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.iterators/cend.pass.cpp b/test/strings/basic.string/string.iterators/cend.pass.cpp
index cca6ff6..6b86d26 100644
--- a/test/strings/basic.string/string.iterators/cend.pass.cpp
+++ b/test/strings/basic.string/string.iterators/cend.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.iterators/crbegin.pass.cpp b/test/strings/basic.string/string.iterators/crbegin.pass.cpp
index dbff2a5..6f29f43 100644
--- a/test/strings/basic.string/string.iterators/crbegin.pass.cpp
+++ b/test/strings/basic.string/string.iterators/crbegin.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.iterators/crend.pass.cpp b/test/strings/basic.string/string.iterators/crend.pass.cpp
index 109c583..1fb422c 100644
--- a/test/strings/basic.string/string.iterators/crend.pass.cpp
+++ b/test/strings/basic.string/string.iterators/crend.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.iterators/db_iterators_2.pass.cpp b/test/strings/basic.string/string.iterators/db_iterators_2.pass.cpp
index d9011f5..6cac187 100644
--- a/test/strings/basic.string/string.iterators/db_iterators_2.pass.cpp
+++ b/test/strings/basic.string/string.iterators/db_iterators_2.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.iterators/db_iterators_3.pass.cpp b/test/strings/basic.string/string.iterators/db_iterators_3.pass.cpp
index 3773dba..d90387e 100644
--- a/test/strings/basic.string/string.iterators/db_iterators_3.pass.cpp
+++ b/test/strings/basic.string/string.iterators/db_iterators_3.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.iterators/db_iterators_4.pass.cpp b/test/strings/basic.string/string.iterators/db_iterators_4.pass.cpp
index f82349a..c4a2d0a 100644
--- a/test/strings/basic.string/string.iterators/db_iterators_4.pass.cpp
+++ b/test/strings/basic.string/string.iterators/db_iterators_4.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.iterators/db_iterators_5.pass.cpp b/test/strings/basic.string/string.iterators/db_iterators_5.pass.cpp
index 8324c87..ce44cb1 100644
--- a/test/strings/basic.string/string.iterators/db_iterators_5.pass.cpp
+++ b/test/strings/basic.string/string.iterators/db_iterators_5.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.iterators/db_iterators_6.pass.cpp b/test/strings/basic.string/string.iterators/db_iterators_6.pass.cpp
index fff3907..8fab8ba 100644
--- a/test/strings/basic.string/string.iterators/db_iterators_6.pass.cpp
+++ b/test/strings/basic.string/string.iterators/db_iterators_6.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.iterators/db_iterators_7.pass.cpp b/test/strings/basic.string/string.iterators/db_iterators_7.pass.cpp
index c36644b..d1cac07 100644
--- a/test/strings/basic.string/string.iterators/db_iterators_7.pass.cpp
+++ b/test/strings/basic.string/string.iterators/db_iterators_7.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.iterators/db_iterators_8.pass.cpp b/test/strings/basic.string/string.iterators/db_iterators_8.pass.cpp
index d2b779b..914c77d 100644
--- a/test/strings/basic.string/string.iterators/db_iterators_8.pass.cpp
+++ b/test/strings/basic.string/string.iterators/db_iterators_8.pass.cpp
@@ -21,7 +21,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.iterators/end.pass.cpp b/test/strings/basic.string/string.iterators/end.pass.cpp
index b3732da..02180bb 100644
--- a/test/strings/basic.string/string.iterators/end.pass.cpp
+++ b/test/strings/basic.string/string.iterators/end.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.iterators/rbegin.pass.cpp b/test/strings/basic.string/string.iterators/rbegin.pass.cpp
index edb02d7..0111ad1 100644
--- a/test/strings/basic.string/string.iterators/rbegin.pass.cpp
+++ b/test/strings/basic.string/string.iterators/rbegin.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.iterators/rend.pass.cpp b/test/strings/basic.string/string.iterators/rend.pass.cpp
index 630565b..750173d 100644
--- a/test/strings/basic.string/string.iterators/rend.pass.cpp
+++ b/test/strings/basic.string/string.iterators/rend.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_append/initializer_list.pass.cpp b/test/strings/basic.string/string.modifiers/string_append/initializer_list.pass.cpp
index 0a1a412..fb28e49 100644
--- a/test/strings/basic.string/string.modifiers/string_append/initializer_list.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_append/initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.modifiers/string_append/iterator.pass.cpp b/test/strings/basic.string/string.modifiers/string_append/iterator.pass.cpp
index 1e5307b..3bf2afa 100644
--- a/test/strings/basic.string/string.modifiers/string_append/iterator.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_append/iterator.pass.cpp
@@ -16,7 +16,7 @@
 #include <cassert>
 
 #include "../../input_iterator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S, class It>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_append/pointer.pass.cpp b/test/strings/basic.string/string.modifiers/string_append/pointer.pass.cpp
index ab81361..5ae15f0 100644
--- a/test/strings/basic.string/string.modifiers/string_append/pointer.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_append/pointer.pass.cpp
@@ -15,7 +15,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_append/pointer_size.pass.cpp b/test/strings/basic.string/string.modifiers/string_append/pointer_size.pass.cpp
index 64f7bb6..5a9e8e2 100644
--- a/test/strings/basic.string/string.modifiers/string_append/pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_append/pointer_size.pass.cpp
@@ -16,7 +16,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_append/push_back.pass.cpp b/test/strings/basic.string/string.modifiers/string_append/push_back.pass.cpp
index 7a6a276..b0a2eb5 100644
--- a/test/strings/basic.string/string.modifiers/string_append/push_back.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_append/push_back.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_append/size_char.pass.cpp b/test/strings/basic.string/string.modifiers/string_append/size_char.pass.cpp
index 920a0bc..00e6ae3 100644
--- a/test/strings/basic.string/string.modifiers/string_append/size_char.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_append/size_char.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_append/string.pass.cpp b/test/strings/basic.string/string.modifiers/string_append/string.pass.cpp
index 2568af4..31f174b 100644
--- a/test/strings/basic.string/string.modifiers/string_append/string.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_append/string.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_append/string_size_size.pass.cpp b/test/strings/basic.string/string.modifiers/string_append/string_size_size.pass.cpp
index 9f4081f..ac74f20 100644
--- a/test/strings/basic.string/string.modifiers/string_append/string_size_size.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_append/string_size_size.pass.cpp
@@ -16,7 +16,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_assign/initializer_list.pass.cpp b/test/strings/basic.string/string.modifiers/string_assign/initializer_list.pass.cpp
index b2c0834..2dae107 100644
--- a/test/strings/basic.string/string.modifiers/string_assign/initializer_list.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_assign/initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.modifiers/string_assign/iterator.pass.cpp b/test/strings/basic.string/string.modifiers/string_assign/iterator.pass.cpp
index 3eefb7b..83b5dd1 100644
--- a/test/strings/basic.string/string.modifiers/string_assign/iterator.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_assign/iterator.pass.cpp
@@ -16,7 +16,7 @@
 #include <cassert>
 
 #include "../../input_iterator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S, class It>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_assign/pointer.pass.cpp b/test/strings/basic.string/string.modifiers/string_assign/pointer.pass.cpp
index f9d0614..adf24ac 100644
--- a/test/strings/basic.string/string.modifiers/string_assign/pointer.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_assign/pointer.pass.cpp
@@ -15,7 +15,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_assign/pointer_size.pass.cpp b/test/strings/basic.string/string.modifiers/string_assign/pointer_size.pass.cpp
index 5a8f9ce..476fe96 100644
--- a/test/strings/basic.string/string.modifiers/string_assign/pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_assign/pointer_size.pass.cpp
@@ -16,7 +16,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_assign/rv_string.pass.cpp b/test/strings/basic.string/string.modifiers/string_assign/rv_string.pass.cpp
index 8c8dc62..ac0e535 100644
--- a/test/strings/basic.string/string.modifiers/string_assign/rv_string.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_assign/rv_string.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_assign/size_char.pass.cpp b/test/strings/basic.string/string.modifiers/string_assign/size_char.pass.cpp
index 4861612..a8f7470 100644
--- a/test/strings/basic.string/string.modifiers/string_assign/size_char.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_assign/size_char.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_assign/string.pass.cpp b/test/strings/basic.string/string.modifiers/string_assign/string.pass.cpp
index f58a8a4..d7ddb77 100644
--- a/test/strings/basic.string/string.modifiers/string_assign/string.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_assign/string.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_assign/string_size_size.pass.cpp b/test/strings/basic.string/string.modifiers/string_assign/string_size_size.pass.cpp
index 5430be3..116673c 100644
--- a/test/strings/basic.string/string.modifiers/string_assign/string_size_size.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_assign/string_size_size.pass.cpp
@@ -16,7 +16,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_copy/copy.pass.cpp b/test/strings/basic.string/string.modifiers/string_copy/copy.pass.cpp
index f1e5a4b..3380135 100644
--- a/test/strings/basic.string/string.modifiers/string_copy/copy.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_copy/copy.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_db1.pass.cpp b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_db1.pass.cpp
index c9033da..6c2929d 100644
--- a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_db1.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_db1.pass.cpp
@@ -20,7 +20,7 @@
 #include <cstdlib>
 #include <exception>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_db2.pass.cpp b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_db2.pass.cpp
index be95fe2..d20fcd4 100644
--- a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_db2.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_db2.pass.cpp
@@ -20,7 +20,7 @@
 #include <cstdlib>
 #include <exception>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db1.pass.cpp b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db1.pass.cpp
index 1479171..5015241 100644
--- a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db1.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db1.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db2.pass.cpp b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db2.pass.cpp
index 13f97b4..6a23bf8 100644
--- a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db2.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db2.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db3.pass.cpp b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db3.pass.cpp
index be3ee64..a844381 100644
--- a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db3.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db3.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db4.pass.cpp b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db4.pass.cpp
index c008196..0549e81 100644
--- a/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db4.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_erase/erase_iter_iter_db4.pass.cpp
@@ -20,7 +20,7 @@
 #include <exception>
 #include <cstdlib>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.modifiers/string_erase/iter.pass.cpp b/test/strings/basic.string/string.modifiers/string_erase/iter.pass.cpp
index 60d5496..c44db71 100644
--- a/test/strings/basic.string/string.modifiers/string_erase/iter.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_erase/iter.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_erase/iter_iter.pass.cpp b/test/strings/basic.string/string.modifiers/string_erase/iter_iter.pass.cpp
index b9bc6ca..dbe6d7b 100644
--- a/test/strings/basic.string/string.modifiers/string_erase/iter_iter.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_erase/iter_iter.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_erase/pop_back.pass.cpp b/test/strings/basic.string/string.modifiers/string_erase/pop_back.pass.cpp
index e84a3ba..790ce40 100644
--- a/test/strings/basic.string/string.modifiers/string_erase/pop_back.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_erase/pop_back.pass.cpp
@@ -18,7 +18,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_erase/size_size.pass.cpp b/test/strings/basic.string/string.modifiers/string_erase/size_size.pass.cpp
index a1c37a9..bc9ec1c 100644
--- a/test/strings/basic.string/string.modifiers/string_erase/size_size.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_erase/size_size.pass.cpp
@@ -16,7 +16,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_insert/iter_char.pass.cpp b/test/strings/basic.string/string.modifiers/string_insert/iter_char.pass.cpp
index 9eff67e..b9e5fa8 100644
--- a/test/strings/basic.string/string.modifiers/string_insert/iter_char.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_insert/iter_char.pass.cpp
@@ -19,7 +19,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_insert/iter_initializer_list.pass.cpp b/test/strings/basic.string/string.modifiers/string_insert/iter_initializer_list.pass.cpp
index 8fc469e..e091662 100644
--- a/test/strings/basic.string/string.modifiers/string_insert/iter_initializer_list.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_insert/iter_initializer_list.pass.cpp
@@ -18,7 +18,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp b/test/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp
index 593279c..38353dd 100644
--- a/test/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp
@@ -20,7 +20,7 @@
 #include <cassert>
 
 #include "../../input_iterator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S, class It>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_insert/iter_size_char.pass.cpp b/test/strings/basic.string/string.modifiers/string_insert/iter_size_char.pass.cpp
index e104072..739c894 100644
--- a/test/strings/basic.string/string.modifiers/string_insert/iter_size_char.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_insert/iter_size_char.pass.cpp
@@ -18,7 +18,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_insert/size_pointer.pass.cpp b/test/strings/basic.string/string.modifiers/string_insert/size_pointer.pass.cpp
index 25016ae..734dd8d 100644
--- a/test/strings/basic.string/string.modifiers/string_insert/size_pointer.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_insert/size_pointer.pass.cpp
@@ -16,7 +16,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_insert/size_pointer_size.pass.cpp b/test/strings/basic.string/string.modifiers/string_insert/size_pointer_size.pass.cpp
index 7f36099..29b00ec 100644
--- a/test/strings/basic.string/string.modifiers/string_insert/size_pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_insert/size_pointer_size.pass.cpp
@@ -16,7 +16,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_insert/size_size_char.pass.cpp b/test/strings/basic.string/string.modifiers/string_insert/size_size_char.pass.cpp
index 5fad9b7..fd85696 100644
--- a/test/strings/basic.string/string.modifiers/string_insert/size_size_char.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_insert/size_size_char.pass.cpp
@@ -16,7 +16,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_insert/size_string.pass.cpp b/test/strings/basic.string/string.modifiers/string_insert/size_string.pass.cpp
index 37ac686..8c18941 100644
--- a/test/strings/basic.string/string.modifiers/string_insert/size_string.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_insert/size_string.pass.cpp
@@ -16,7 +16,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_insert/size_string_size_size.pass.cpp b/test/strings/basic.string/string.modifiers/string_insert/size_string_size_size.pass.cpp
index b1c4f4b..b7317a3 100644
--- a/test/strings/basic.string/string.modifiers/string_insert/size_string_size_size.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_insert/size_string_size_size.pass.cpp
@@ -17,7 +17,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_op_plus_equal/char.pass.cpp b/test/strings/basic.string/string.modifiers/string_op_plus_equal/char.pass.cpp
index bea51ea..7384ae7 100644
--- a/test/strings/basic.string/string.modifiers/string_op_plus_equal/char.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_op_plus_equal/char.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_op_plus_equal/initializer_list.pass.cpp b/test/strings/basic.string/string.modifiers/string_op_plus_equal/initializer_list.pass.cpp
index 04d5883..c291028 100644
--- a/test/strings/basic.string/string.modifiers/string_op_plus_equal/initializer_list.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_op_plus_equal/initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.modifiers/string_op_plus_equal/pointer.pass.cpp b/test/strings/basic.string/string.modifiers/string_op_plus_equal/pointer.pass.cpp
index 9bdd2aa..77b20d1 100644
--- a/test/strings/basic.string/string.modifiers/string_op_plus_equal/pointer.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_op_plus_equal/pointer.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_op_plus_equal/string.pass.cpp b/test/strings/basic.string/string.modifiers/string_op_plus_equal/string.pass.cpp
index 8d5a949..3364979 100644
--- a/test/strings/basic.string/string.modifiers/string_op_plus_equal/string.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_op_plus_equal/string.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_initializer_list.pass.cpp b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_initializer_list.pass.cpp
index 6bc7148..20455b2 100644
--- a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_initializer_list.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_initializer_list.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_iter_iter.pass.cpp b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_iter_iter.pass.cpp
index bdc4519..9295c5b 100644
--- a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_iter_iter.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_iter_iter.pass.cpp
@@ -17,7 +17,7 @@
 #include <iterator>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S, class It>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_pointer.pass.cpp b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_pointer.pass.cpp
index 6d552f0..cb4ce61 100644
--- a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_pointer.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_pointer.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_pointer_size.pass.cpp b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_pointer_size.pass.cpp
index a8968ef..b1d6ab1 100644
--- a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_pointer_size.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_size_char.pass.cpp b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_size_char.pass.cpp
index b1b3d96..b0e2234 100644
--- a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_size_char.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_size_char.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_string.pass.cpp b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_string.pass.cpp
index 95ef8be..0f95492 100644
--- a/test/strings/basic.string/string.modifiers/string_replace/iter_iter_string.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_replace/iter_iter_string.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_replace/size_size_pointer.pass.cpp b/test/strings/basic.string/string.modifiers/string_replace/size_size_pointer.pass.cpp
index 4dd1a82..914081b 100644
--- a/test/strings/basic.string/string.modifiers/string_replace/size_size_pointer.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_replace/size_size_pointer.pass.cpp
@@ -19,7 +19,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_replace/size_size_pointer_size.pass.cpp b/test/strings/basic.string/string.modifiers/string_replace/size_size_pointer_size.pass.cpp
index 0b4aeaf..d987042 100644
--- a/test/strings/basic.string/string.modifiers/string_replace/size_size_pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_replace/size_size_pointer_size.pass.cpp
@@ -19,7 +19,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_replace/size_size_size_char.pass.cpp b/test/strings/basic.string/string.modifiers/string_replace/size_size_size_char.pass.cpp
index f8e13b8..33f57fd 100644
--- a/test/strings/basic.string/string.modifiers/string_replace/size_size_size_char.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_replace/size_size_size_char.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_replace/size_size_string.pass.cpp b/test/strings/basic.string/string.modifiers/string_replace/size_size_string.pass.cpp
index 08e9068..c130780 100644
--- a/test/strings/basic.string/string.modifiers/string_replace/size_size_string.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_replace/size_size_string.pass.cpp
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_replace/size_size_string_size_size.pass.cpp b/test/strings/basic.string/string.modifiers/string_replace/size_size_string_size_size.pass.cpp
index 0999800..25e5c44 100644
--- a/test/strings/basic.string/string.modifiers/string_replace/size_size_string_size_size.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_replace/size_size_string_size_size.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.modifiers/string_swap/swap.pass.cpp b/test/strings/basic.string/string.modifiers/string_swap/swap.pass.cpp
index adc65cc..4973bda 100644
--- a/test/strings/basic.string/string.modifiers/string_swap/swap.pass.cpp
+++ b/test/strings/basic.string/string.modifiers/string_swap/swap.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string.io/get_line.pass.cpp b/test/strings/basic.string/string.nonmembers/string.io/get_line.pass.cpp
index 2a3b03d..4a912ea 100644
--- a/test/strings/basic.string/string.nonmembers/string.io/get_line.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string.io/get_line.pass.cpp
@@ -18,7 +18,7 @@
 #include <sstream>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.nonmembers/string.io/get_line_delim.pass.cpp b/test/strings/basic.string/string.nonmembers/string.io/get_line_delim.pass.cpp
index a1ca8ce..6596f2f 100644
--- a/test/strings/basic.string/string.nonmembers/string.io/get_line_delim.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string.io/get_line_delim.pass.cpp
@@ -18,7 +18,7 @@
 #include <sstream>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.nonmembers/string.io/get_line_delim_rv.pass.cpp b/test/strings/basic.string/string.nonmembers/string.io/get_line_delim_rv.pass.cpp
index 47e66ef..84f52bb 100644
--- a/test/strings/basic.string/string.nonmembers/string.io/get_line_delim_rv.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string.io/get_line_delim_rv.pass.cpp
@@ -18,7 +18,7 @@
 #include <sstream>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.nonmembers/string.io/get_line_rv.pass.cpp b/test/strings/basic.string/string.nonmembers/string.io/get_line_rv.pass.cpp
index 0565b37..a3c9911 100644
--- a/test/strings/basic.string/string.nonmembers/string.io/get_line_rv.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string.io/get_line_rv.pass.cpp
@@ -18,7 +18,7 @@
 #include <sstream>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.nonmembers/string.io/stream_extract.pass.cpp b/test/strings/basic.string/string.nonmembers/string.io/stream_extract.pass.cpp
index 689fb72..af806bc 100644
--- a/test/strings/basic.string/string.nonmembers/string.io/stream_extract.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string.io/stream_extract.pass.cpp
@@ -18,7 +18,7 @@
 #include <sstream>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.nonmembers/string.io/stream_insert.pass.cpp b/test/strings/basic.string/string.nonmembers/string.io/stream_insert.pass.cpp
index 5f777ba..102e8ea 100644
--- a/test/strings/basic.string/string.nonmembers/string.io/stream_insert.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string.io/stream_insert.pass.cpp
@@ -18,7 +18,7 @@
 #include <sstream>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int main()
 {
diff --git a/test/strings/basic.string/string.nonmembers/string.special/swap.pass.cpp b/test/strings/basic.string/string.nonmembers/string.special/swap.pass.cpp
index 264494c..cee5388 100644
--- a/test/strings/basic.string/string.nonmembers/string.special/swap.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string.special/swap.pass.cpp
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_op!=/pointer_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_op!=/pointer_string.pass.cpp
index 6810c4f..cc08982 100644
--- a/test/strings/basic.string/string.nonmembers/string_op!=/pointer_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_op!=/pointer_string.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_op!=/string_pointer.pass.cpp b/test/strings/basic.string/string.nonmembers/string_op!=/string_pointer.pass.cpp
index e47214e..b496d70 100644
--- a/test/strings/basic.string/string.nonmembers/string_op!=/string_pointer.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_op!=/string_pointer.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_op!=/string_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_op!=/string_string.pass.cpp
index 864da89..069b305 100644
--- a/test/strings/basic.string/string.nonmembers/string_op!=/string_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_op!=/string_string.pass.cpp
@@ -16,7 +16,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_op+/char_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_op+/char_string.pass.cpp
index 2d095a2..4e09bf2 100644
--- a/test/strings/basic.string/string.nonmembers/string_op+/char_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_op+/char_string.pass.cpp
@@ -20,7 +20,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_op+/pointer_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_op+/pointer_string.pass.cpp
index a06157d..9dc8a51 100644
--- a/test/strings/basic.string/string.nonmembers/string_op+/pointer_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_op+/pointer_string.pass.cpp
@@ -20,7 +20,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_op+/string_char.pass.cpp b/test/strings/basic.string/string.nonmembers/string_op+/string_char.pass.cpp
index fa5d0be..4d72db5 100644
--- a/test/strings/basic.string/string.nonmembers/string_op+/string_char.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_op+/string_char.pass.cpp
@@ -20,7 +20,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_op+/string_pointer.pass.cpp b/test/strings/basic.string/string.nonmembers/string_op+/string_pointer.pass.cpp
index 0be44c7..47fc1ca 100644
--- a/test/strings/basic.string/string.nonmembers/string_op+/string_pointer.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_op+/string_pointer.pass.cpp
@@ -20,7 +20,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_op+/string_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_op+/string_string.pass.cpp
index 4a9fabe..bf2ddd5 100644
--- a/test/strings/basic.string/string.nonmembers/string_op+/string_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_op+/string_string.pass.cpp
@@ -32,7 +32,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_operator==/pointer_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_operator==/pointer_string.pass.cpp
index a64881c..19a5bdd 100644
--- a/test/strings/basic.string/string.nonmembers/string_operator==/pointer_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_operator==/pointer_string.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_operator==/string_pointer.pass.cpp b/test/strings/basic.string/string.nonmembers/string_operator==/string_pointer.pass.cpp
index 77ebe08..22006bb 100644
--- a/test/strings/basic.string/string.nonmembers/string_operator==/string_pointer.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_operator==/string_pointer.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_operator==/string_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_operator==/string_string.pass.cpp
index 5946839..0bff70a 100644
--- a/test/strings/basic.string/string.nonmembers/string_operator==/string_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_operator==/string_string.pass.cpp
@@ -16,7 +16,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_opgt/pointer_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_opgt/pointer_string.pass.cpp
index 56af158..f9fa204 100644
--- a/test/strings/basic.string/string.nonmembers/string_opgt/pointer_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_opgt/pointer_string.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_opgt/string_pointer.pass.cpp b/test/strings/basic.string/string.nonmembers/string_opgt/string_pointer.pass.cpp
index 0577ed0..daa6f40 100644
--- a/test/strings/basic.string/string.nonmembers/string_opgt/string_pointer.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_opgt/string_pointer.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_opgt/string_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_opgt/string_string.pass.cpp
index 3074bc9..95073bf 100644
--- a/test/strings/basic.string/string.nonmembers/string_opgt/string_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_opgt/string_string.pass.cpp
@@ -16,7 +16,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_opgt=/pointer_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_opgt=/pointer_string.pass.cpp
index 2105af0..eab117a 100644
--- a/test/strings/basic.string/string.nonmembers/string_opgt=/pointer_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_opgt=/pointer_string.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_opgt=/string_pointer.pass.cpp b/test/strings/basic.string/string.nonmembers/string_opgt=/string_pointer.pass.cpp
index 69359f7..56b3b35 100644
--- a/test/strings/basic.string/string.nonmembers/string_opgt=/string_pointer.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_opgt=/string_pointer.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_opgt=/string_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_opgt=/string_string.pass.cpp
index 32c3406..c02b202 100644
--- a/test/strings/basic.string/string.nonmembers/string_opgt=/string_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_opgt=/string_string.pass.cpp
@@ -16,7 +16,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_oplt/pointer_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_oplt/pointer_string.pass.cpp
index 28e8db9..86f6a2d 100644
--- a/test/strings/basic.string/string.nonmembers/string_oplt/pointer_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_oplt/pointer_string.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_oplt/string_pointer.pass.cpp b/test/strings/basic.string/string.nonmembers/string_oplt/string_pointer.pass.cpp
index 66063bb..b935da5 100644
--- a/test/strings/basic.string/string.nonmembers/string_oplt/string_pointer.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_oplt/string_pointer.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_oplt/string_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_oplt/string_string.pass.cpp
index 3c5d115..487e205 100644
--- a/test/strings/basic.string/string.nonmembers/string_oplt/string_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_oplt/string_string.pass.cpp
@@ -16,7 +16,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_oplt=/pointer_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_oplt=/pointer_string.pass.cpp
index 05ab319..2195940 100644
--- a/test/strings/basic.string/string.nonmembers/string_oplt=/pointer_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_oplt=/pointer_string.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_oplt=/string_pointer.pass.cpp b/test/strings/basic.string/string.nonmembers/string_oplt=/string_pointer.pass.cpp
index 964d71c..bb1bce8 100644
--- a/test/strings/basic.string/string.nonmembers/string_oplt=/string_pointer.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_oplt=/string_pointer.pass.cpp
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.nonmembers/string_oplt=/string_string.pass.cpp b/test/strings/basic.string/string.nonmembers/string_oplt=/string_string.pass.cpp
index 5758ae3..2b975f1 100644
--- a/test/strings/basic.string/string.nonmembers/string_oplt=/string_string.pass.cpp
+++ b/test/strings/basic.string/string.nonmembers/string_oplt=/string_string.pass.cpp
@@ -16,7 +16,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string.accessors/c_str.pass.cpp b/test/strings/basic.string/string.ops/string.accessors/c_str.pass.cpp
index 3326b35..3bdb800 100644
--- a/test/strings/basic.string/string.ops/string.accessors/c_str.pass.cpp
+++ b/test/strings/basic.string/string.ops/string.accessors/c_str.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string.accessors/data.pass.cpp b/test/strings/basic.string/string.ops/string.accessors/data.pass.cpp
index c2c57f6..917248f 100644
--- a/test/strings/basic.string/string.ops/string.accessors/data.pass.cpp
+++ b/test/strings/basic.string/string.ops/string.accessors/data.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string.accessors/get_allocator.pass.cpp b/test/strings/basic.string/string.ops/string.accessors/get_allocator.pass.cpp
index 8d99817..b3892d7 100644
--- a/test/strings/basic.string/string.ops/string.accessors/get_allocator.pass.cpp
+++ b/test/strings/basic.string/string.ops/string.accessors/get_allocator.pass.cpp
@@ -15,7 +15,7 @@
 #include <cassert>
 
 #include "../../test_allocator.h"
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_compare/pointer.pass.cpp b/test/strings/basic.string/string.ops/string_compare/pointer.pass.cpp
index c13905e..dda7428 100644
--- a/test/strings/basic.string/string.ops/string_compare/pointer.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_compare/pointer.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int sign(int x)
 {
diff --git a/test/strings/basic.string/string.ops/string_compare/size_size_pointer.pass.cpp b/test/strings/basic.string/string.ops/string_compare/size_size_pointer.pass.cpp
index ca4b067..9ed58a3 100644
--- a/test/strings/basic.string/string.ops/string_compare/size_size_pointer.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_compare/size_size_pointer.pass.cpp
@@ -15,7 +15,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int sign(int x)
 {
diff --git a/test/strings/basic.string/string.ops/string_compare/size_size_pointer_size.pass.cpp b/test/strings/basic.string/string.ops/string_compare/size_size_pointer_size.pass.cpp
index c94eaef..ee804d9 100644
--- a/test/strings/basic.string/string.ops/string_compare/size_size_pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_compare/size_size_pointer_size.pass.cpp
@@ -15,7 +15,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int sign(int x)
 {
diff --git a/test/strings/basic.string/string.ops/string_compare/size_size_string.pass.cpp b/test/strings/basic.string/string.ops/string_compare/size_size_string.pass.cpp
index 4312e27..3deb617 100644
--- a/test/strings/basic.string/string.ops/string_compare/size_size_string.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_compare/size_size_string.pass.cpp
@@ -15,7 +15,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int sign(int x)
 {
diff --git a/test/strings/basic.string/string.ops/string_compare/size_size_string_size_size.pass.cpp b/test/strings/basic.string/string.ops/string_compare/size_size_string_size_size.pass.cpp
index 8fa23b7..29eba9a 100644
--- a/test/strings/basic.string/string.ops/string_compare/size_size_string_size_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_compare/size_size_string_size_size.pass.cpp
@@ -16,7 +16,7 @@
 #include <stdexcept>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int sign(int x)
 {
diff --git a/test/strings/basic.string/string.ops/string_compare/string.pass.cpp b/test/strings/basic.string/string.ops/string_compare/string.pass.cpp
index 58f5760..7de95a8 100644
--- a/test/strings/basic.string/string.ops/string_compare/string.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_compare/string.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 int sign(int x)
 {
diff --git a/test/strings/basic.string/string.ops/string_find.first.not.of/char_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.first.not.of/char_size.pass.cpp
index 302f725..590173e 100644
--- a/test/strings/basic.string/string.ops/string_find.first.not.of/char_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.first.not.of/char_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.first.not.of/pointer_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.first.not.of/pointer_size.pass.cpp
index 66b21ae..53d3a95 100644
--- a/test/strings/basic.string/string.ops/string_find.first.not.of/pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.first.not.of/pointer_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.first.not.of/pointer_size_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.first.not.of/pointer_size_size.pass.cpp
index 4416b82..14ac4b2 100644
--- a/test/strings/basic.string/string.ops/string_find.first.not.of/pointer_size_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.first.not.of/pointer_size_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.first.not.of/string_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.first.not.of/string_size.pass.cpp
index 3d28c24..4fb072f 100644
--- a/test/strings/basic.string/string.ops/string_find.first.not.of/string_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.first.not.of/string_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.first.of/char_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.first.of/char_size.pass.cpp
index fd64fdf..32d0e86 100644
--- a/test/strings/basic.string/string.ops/string_find.first.of/char_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.first.of/char_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.first.of/pointer_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.first.of/pointer_size.pass.cpp
index 59e00de..6dd176d 100644
--- a/test/strings/basic.string/string.ops/string_find.first.of/pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.first.of/pointer_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.first.of/pointer_size_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.first.of/pointer_size_size.pass.cpp
index 0c21a02..9e98a6a 100644
--- a/test/strings/basic.string/string.ops/string_find.first.of/pointer_size_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.first.of/pointer_size_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.first.of/string_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.first.of/string_size.pass.cpp
index d7db16f..e409edc 100644
--- a/test/strings/basic.string/string.ops/string_find.first.of/string_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.first.of/string_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.last.not.of/char_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.last.not.of/char_size.pass.cpp
index f6ce46a..b130f92 100644
--- a/test/strings/basic.string/string.ops/string_find.last.not.of/char_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.last.not.of/char_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.last.not.of/pointer_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.last.not.of/pointer_size.pass.cpp
index 47c6d7f..3e6bd9d 100644
--- a/test/strings/basic.string/string.ops/string_find.last.not.of/pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.last.not.of/pointer_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.last.not.of/pointer_size_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.last.not.of/pointer_size_size.pass.cpp
index f131b96..4db7762 100644
--- a/test/strings/basic.string/string.ops/string_find.last.not.of/pointer_size_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.last.not.of/pointer_size_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.last.not.of/string_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.last.not.of/string_size.pass.cpp
index 6de6326..ba93adb 100644
--- a/test/strings/basic.string/string.ops/string_find.last.not.of/string_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.last.not.of/string_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.last.of/char_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.last.of/char_size.pass.cpp
index 32aa77d..12765b7 100644
--- a/test/strings/basic.string/string.ops/string_find.last.of/char_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.last.of/char_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.last.of/pointer_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.last.of/pointer_size.pass.cpp
index cfe71d2..f1b447c 100644
--- a/test/strings/basic.string/string.ops/string_find.last.of/pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.last.of/pointer_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.last.of/pointer_size_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.last.of/pointer_size_size.pass.cpp
index 7d82dc0..7f96e63 100644
--- a/test/strings/basic.string/string.ops/string_find.last.of/pointer_size_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.last.of/pointer_size_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find.last.of/string_size.pass.cpp b/test/strings/basic.string/string.ops/string_find.last.of/string_size.pass.cpp
index 98f78f8..351c672 100644
--- a/test/strings/basic.string/string.ops/string_find.last.of/string_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find.last.of/string_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find/char_size.pass.cpp b/test/strings/basic.string/string.ops/string_find/char_size.pass.cpp
index 3c48a77..24e58fc 100644
--- a/test/strings/basic.string/string.ops/string_find/char_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find/char_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find/pointer_size.pass.cpp b/test/strings/basic.string/string.ops/string_find/pointer_size.pass.cpp
index c3ea079..e00d7fd 100644
--- a/test/strings/basic.string/string.ops/string_find/pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find/pointer_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find/pointer_size_size.pass.cpp b/test/strings/basic.string/string.ops/string_find/pointer_size_size.pass.cpp
index f936651..3006c46 100644
--- a/test/strings/basic.string/string.ops/string_find/pointer_size_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find/pointer_size_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_find/string_size.pass.cpp b/test/strings/basic.string/string.ops/string_find/string_size.pass.cpp
index dc280d0..a89df4e 100644
--- a/test/strings/basic.string/string.ops/string_find/string_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_find/string_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_rfind/char_size.pass.cpp b/test/strings/basic.string/string.ops/string_rfind/char_size.pass.cpp
index 8db67d9..cbc0c9b 100644
--- a/test/strings/basic.string/string.ops/string_rfind/char_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_rfind/char_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_rfind/pointer_size.pass.cpp b/test/strings/basic.string/string.ops/string_rfind/pointer_size.pass.cpp
index 2b1efd3..450aebe 100644
--- a/test/strings/basic.string/string.ops/string_rfind/pointer_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_rfind/pointer_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_rfind/pointer_size_size.pass.cpp b/test/strings/basic.string/string.ops/string_rfind/pointer_size_size.pass.cpp
index 5699cab..47baf40 100644
--- a/test/strings/basic.string/string.ops/string_rfind/pointer_size_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_rfind/pointer_size_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_rfind/string_size.pass.cpp b/test/strings/basic.string/string.ops/string_rfind/string_size.pass.cpp
index d7c2e85..05e6e51 100644
--- a/test/strings/basic.string/string.ops/string_rfind/string_size.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_rfind/string_size.pass.cpp
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/strings/basic.string/string.ops/string_substr/substr.pass.cpp b/test/strings/basic.string/string.ops/string_substr/substr.pass.cpp
index 9612b58..a73f70c 100644
--- a/test/strings/basic.string/string.ops/string_substr/substr.pass.cpp
+++ b/test/strings/basic.string/string.ops/string_substr/substr.pass.cpp
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cassert>
 
-#include "../../min_allocator.h"
+#include "min_allocator.h"
 
 template <class S>
 void
diff --git a/test/support/min_allocator.h b/test/support/min_allocator.h
new file mode 100644
index 0000000..c0d28e5
--- /dev/null
+++ b/test/support/min_allocator.h
@@ -0,0 +1,252 @@
+#ifndef MIN_ALLOCATOR_H
+#define MIN_ALLOCATOR_H
+
+#if __cplusplus >= 201103L
+
+#include <memory>
+
+template <class T> class min_pointer;
+template <class T> class min_pointer<const T>;
+template <> class min_pointer<void>;
+template <> class min_pointer<const void>;
+template <class T> class min_allocator;
+
+template <>
+class min_pointer<const void>
+{
+    const void* ptr_;
+public:
+    min_pointer() noexcept = default;
+    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
+    template <class T>
+    min_pointer(min_pointer<T> p) : ptr_(p.ptr_) {}
+
+    explicit operator bool() const {return ptr_ != nullptr;}
+
+    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
+    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
+    template <class U> friend class min_pointer;
+};
+
+template <>
+class min_pointer<void>
+{
+    void* ptr_;
+public:
+    min_pointer() noexcept = default;
+    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
+    template <class T,
+              class = typename std::enable_if
+                       <
+                            !std::is_const<T>::value
+                       >::type
+             >
+    min_pointer(min_pointer<T> p) : ptr_(p.ptr_) {}
+
+    explicit operator bool() const {return ptr_ != nullptr;}
+
+    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
+    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
+    template <class U> friend class min_pointer;
+};
+
+template <class T>
+class min_pointer
+{
+    T* ptr_;
+
+    explicit min_pointer(T* p) : ptr_(p) {}
+public:
+    min_pointer() noexcept = default;
+    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
+    explicit min_pointer(min_pointer<void> p) : ptr_(static_cast<T*>(p.ptr_)) {}
+
+    explicit operator bool() const {return ptr_ != nullptr;}
+    
+    typedef std::ptrdiff_t difference_type;
+    typedef T& reference;
+    typedef T* pointer;
+    typedef T value_type;
+    typedef std::random_access_iterator_tag iterator_category;
+
+    reference operator*() const {return *ptr_;}
+    pointer operator->() const {return ptr_;}
+
+    min_pointer& operator++() {++ptr_; return *this;}
+    min_pointer operator++(int) {min_pointer tmp(*this); ++ptr_; return tmp;}
+
+    min_pointer& operator--() {--ptr_; return *this;}
+    min_pointer operator--(int) {min_pointer tmp(*this); --ptr_; return tmp;}
+
+    min_pointer& operator+=(difference_type n) {ptr_ += n; return *this;}
+    min_pointer& operator-=(difference_type n) {ptr_ -= n; return *this;}
+
+    min_pointer operator+(difference_type n) const
+    {
+        min_pointer tmp(*this);
+        tmp += n;
+        return tmp;
+    }
+
+    friend min_pointer operator+(difference_type n, min_pointer x)
+    {
+        return x + n;
+    }
+
+    min_pointer operator-(difference_type n) const
+    {
+        min_pointer tmp(*this);
+        tmp -= n;
+        return tmp;
+    }
+
+    friend difference_type operator-(min_pointer x, min_pointer y)
+    {
+        return x.ptr_ - y.ptr_;
+    }
+
+    reference operator[](difference_type n) const {return ptr_[n];}
+
+    friend bool operator< (min_pointer x, min_pointer y) {return x.ptr_ < y.ptr_;}
+    friend bool operator> (min_pointer x, min_pointer y) {return y < x;}
+    friend bool operator<=(min_pointer x, min_pointer y) {return !(y < x);}
+    friend bool operator>=(min_pointer x, min_pointer y) {return !(x < y);}
+
+    static min_pointer pointer_to(T& t) {return min_pointer(std::addressof(t));}
+
+    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
+    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
+    template <class U> friend class min_pointer;
+    template <class U> friend class min_allocator;
+};
+
+template <class T>
+class min_pointer<const T>
+{
+    const T* ptr_;
+
+    explicit min_pointer(const T* p) : ptr_(p) {}
+public:
+    min_pointer() noexcept = default;
+    min_pointer(std::nullptr_t) : ptr_(nullptr) {}
+    min_pointer(min_pointer<T> p) : ptr_(p.ptr_) {}
+    explicit min_pointer(min_pointer<const void> p) : ptr_(static_cast<const T*>(p.ptr_)) {}
+
+    explicit operator bool() const {return ptr_ != nullptr;}
+
+    typedef std::ptrdiff_t difference_type;
+    typedef const T& reference;
+    typedef const T* pointer;
+    typedef const T value_type;
+    typedef std::random_access_iterator_tag iterator_category;
+
+    reference operator*() const {return *ptr_;}
+    pointer operator->() const {return ptr_;}
+
+    min_pointer& operator++() {++ptr_; return *this;}
+    min_pointer operator++(int) {min_pointer tmp(*this); ++ptr_; return tmp;}
+
+    min_pointer& operator--() {--ptr_; return *this;}
+    min_pointer operator--(int) {min_pointer tmp(*this); --ptr_; return tmp;}
+
+    min_pointer& operator+=(difference_type n) {ptr_ += n; return *this;}
+    min_pointer& operator-=(difference_type n) {ptr_ -= n; return *this;}
+
+    min_pointer operator+(difference_type n) const
+    {
+        min_pointer tmp(*this);
+        tmp += n;
+        return tmp;
+    }
+
+    friend min_pointer operator+(difference_type n, min_pointer x)
+    {
+        return x + n;
+    }
+
+    min_pointer operator-(difference_type n) const
+    {
+        min_pointer tmp(*this);
+        tmp -= n;
+        return tmp;
+    }
+
+    friend difference_type operator-(min_pointer x, min_pointer y)
+    {
+        return x.ptr_ - y.ptr_;
+    }
+
+    reference operator[](difference_type n) const {return ptr_[n];}
+
+    friend bool operator< (min_pointer x, min_pointer y) {return x.ptr_ < y.ptr_;}
+    friend bool operator> (min_pointer x, min_pointer y) {return y < x;}
+    friend bool operator<=(min_pointer x, min_pointer y) {return !(y < x);}
+    friend bool operator>=(min_pointer x, min_pointer y) {return !(x < y);}
+
+    static min_pointer pointer_to(const T& t) {return min_pointer(std::addressof(t));}
+
+    friend bool operator==(min_pointer x, min_pointer y) {return x.ptr_ == y.ptr_;}
+    friend bool operator!=(min_pointer x, min_pointer y) {return !(x == y);}
+    template <class U> friend class min_pointer;
+};
+
+template <class T>
+inline
+bool
+operator==(min_pointer<T> x, std::nullptr_t)
+{
+    return !static_cast<bool>(x);
+}
+
+template <class T>
+inline
+bool
+operator==(std::nullptr_t, min_pointer<T> x)
+{
+    return !static_cast<bool>(x);
+}
+
+template <class T>
+inline
+bool
+operator!=(min_pointer<T> x, std::nullptr_t)
+{
+    return static_cast<bool>(x);
+}
+
+template <class T>
+inline
+bool
+operator!=(std::nullptr_t, min_pointer<T> x)
+{
+    return static_cast<bool>(x);
+}
+
+template <class T>
+class min_allocator
+{
+public:
+    typedef T value_type;
+    typedef min_pointer<T> pointer;
+
+    min_allocator() = default;
+    template <class U>
+    min_allocator(min_allocator<U>) {}
+
+    pointer allocate(std::ptrdiff_t n)
+    {
+        return pointer(static_cast<T*>(::operator new(n*sizeof(T))));
+    }
+
+    void deallocate(pointer p, std::ptrdiff_t)
+    {
+        return ::operator delete(p.ptr_);
+    }
+
+    friend bool operator==(min_allocator, min_allocator) {return true;}
+    friend bool operator!=(min_allocator x, min_allocator y) {return !(x == y);}
+};
+
+#endif  // __cplusplus >= 201103L
+
+#endif  // MIN_ALLOCATOR_H
diff --git a/test/support/powerpc-darwin.h b/test/support/powerpc-darwin.h
new file mode 100644
index 0000000..60ba2a8
--- /dev/null
+++ b/test/support/powerpc-darwin.h
@@ -0,0 +1,23 @@
+#ifndef	__LIBCXX_TEST_SUPPORT_POWERPC_DARWIN_H__
+#define	__LIBCXX_TEST_SUPPORT_POWERPC_DARWIN_H__
+
+// control certain workarounds for the powerpc-darwin8 port
+
+/**
+	On PowerPC-darwin, ptrdiff_t is int, but size_t is unsigned long.
+	Tests that rely on is_same<make_unsigned<ptrdiff_t>, size_t>
+	will fail, but as long as the underlying integer types are
+	the same size (which is true on PPC32), then it is still safe.
+ */
+#define	PTRDIFF_T_VS_SIZE_T_DIFFER
+
+/**
+	PPC32 doesn't have native 64b atomic operations.
+	Thus, they must be emulated using mutex or lock.
+	TODO: provide specializations of struct atomic using std::mutex.
+	TODO: implement in compiler front-end
+	Undefine the following to enable mutex-based emulated 64b atomics.
+ */
+// #define	MISSING_64B_ATOMIC_OPS
+
+#endif	// __LIBCXX_TEST_SUPPORT_POWERPC_DARWIN_H__
diff --git a/test/testit b/test/testit
index 18b0814..ee2e5db 100755
--- a/test/testit
+++ b/test/testit
@@ -24,6 +24,7 @@ done
 
 cd ..
 LIBCXX_ROOT=`pwd`
+cpd=`echo "$LIBCXX_ROOT" | awk 'BEGIN{FS="/";}{print NF+1;}'`
 cd $origpath
 
 if [ -z "$CC" ]
@@ -36,6 +37,10 @@ then
 	fi
 fi
 
+if [ -z "$KEEP_EXE" ]
+then
+	KEEP_EXE=1
+fi
 if [ -z "$OPTIONS" ]
 then
 	OPTIONS="-std=c++11 -stdlib=libc++"
@@ -52,6 +57,7 @@ then
        SOURCE_LIB="-L$LIBCXX_ROOT/lib"
 fi
 
+# use distinct test executables (parallelizable)
 case $TRIPLE in
   *-*-mingw* | *-*-cygwin* | *-*-win*)
 	TEST_EXE=test.exe
@@ -74,14 +80,16 @@ IMPLEMENTED_FAIL=0
 IMPLEMENTED_PASS=0
 
 afunc() {
+	rwd=`pwd | cut -d/ -f$cpd-`
 	fail=0
 	pass=0
 	if (ls *.fail.cpp > /dev/null 2>&1)
 	then
 		for FILE in $(ls *.fail.cpp); do
-			if $CC $OPTIONS $HEADER_INCLUDE $SOURCE_LIB $FILE $LIBS -o ./$TEST_EXE > /dev/null 2>&1
+			t_exe=`basename $FILE .cpp`
+			if $CC $OPTIONS $HEADER_INCLUDE $SOURCE_LIB $FILE $LIBS -o ./$t_exe > /dev/null 2>&1
 			then
-				rm ./$TEST_EXE
+				test "$KEEP_EXE" = 1 || rm ./$t_exe
 				echo "$FILE should not compile"
 				fail=$(($fail+1))
 			else
@@ -93,24 +101,25 @@ afunc() {
 	if (ls *.pass.cpp > /dev/null 2>&1)
 	then
 		for FILE in $(ls *.pass.cpp); do
+		t_exe=`basename $FILE .cpp`
             if [ "$VERBOSE" ]
             then
              	echo "Running test: " $FILE
             fi
-			if $CC $OPTIONS $HEADER_INCLUDE $SOURCE_LIB $FILE $LIBS $(test $1 = no || echo $THREAD_FLAGS) -o ./$TEST_EXE
+			if $CC $OPTIONS $HEADER_INCLUDE $SOURCE_LIB $FILE $LIBS $(test $1 = no || echo $THREAD_FLAGS) -o ./$t_exe
 			then
-				if ./$TEST_EXE
+				if ./$t_exe
 				then
-					rm ./$TEST_EXE
+					test "$KEEP_EXE" = 1 || rm ./$t_exe
 					pass=$(($pass+1))
 				else
-					echo "`pwd`/$FILE failed at run time"
+					echo "$rwd/$FILE failed at run time"
 					echo "Compile line was:" $CC $OPTIONS $HEADER_INCLUDE $SOURCE_LIB $FILE $LIBS $(test $1 = no || echo $THREAD_FLAGS)
 					fail=$(($fail+1))
-					rm ./$TEST_EXE
+					test "$KEEP_EXE" = 1 || rm ./$t_exe
 				fi
 			else
-				echo "`pwd`/$FILE failed to compile"
+				echo "$rwd/$FILE failed to compile"
 				echo "Compile line was:" $CC $OPTIONS $HEADER_INCLUDE $SOURCE_LIB $FILE $LIBS $(test $1 = no || echo $THREAD_FLAGS)
 				fail=$(($fail+1))
 			fi
@@ -119,12 +128,12 @@ afunc() {
 
 	if [ $fail -gt 0 ]
 	then
-		echo "failed $fail tests in `pwd`"
+		echo "failed $fail tests in $rwd"
 		IMPLEMENTED_FAIL=$(($IMPLEMENTED_FAIL+1))
 	fi
 	if [ $pass -gt 0 ]
 	then
-		echo "passed $pass tests in `pwd`"
+		echo "passed $pass tests in $rwd"
 		if [ $fail -eq 0 ]
 		then
 			IMPLEMENTED_PASS=$((IMPLEMENTED_PASS+1))
@@ -132,7 +141,7 @@ afunc() {
 	fi
 	if [ $fail -eq 0 -a $pass -eq 0 ]
 	then
-		echo "not implemented:  `pwd`"
+		echo "not implemented:  $rwd"
 		UNIMPLEMENTED=$(($UNIMPLEMENTED+1))
 	fi
 
@@ -159,6 +168,7 @@ afunc no
 echo "****************************************************"
 echo "Results for `pwd`:"
 echo "using `$CC --version`"
+echo "  (`which $CC`)"
 echo "with $OPTIONS $HEADER_INCLUDE $SOURCE_LIB"
 echo "----------------------------------------------------"
 echo "sections without tests   : $UNIMPLEMENTED"
diff --git a/test/utilities/meta/meta.unary.prop.query/alignment_of.pass.cpp b/test/utilities/meta/meta.unary.prop.query/alignment_of.pass.cpp
index 9ee89c2..01a2f65 100644
--- a/test/utilities/meta/meta.unary.prop.query/alignment_of.pass.cpp
+++ b/test/utilities/meta/meta.unary.prop.query/alignment_of.pass.cpp
@@ -38,6 +38,10 @@ int main()
     test_alignment_of<char[3], 1>();
     test_alignment_of<int, 4>();
     test_alignment_of<double, 8>();
+#if (defined(__ppc__) && !defined(__ppc64__))
+    test_alignment_of<bool, 4>();	// 32-bit PPC has four byte bool
+#else
     test_alignment_of<bool, 1>();
+#endif
     test_alignment_of<unsigned, 4>();
 }
diff --git a/include/__config b/include/__config
index 4520739..6a0c416 100644
--- a/include/__config
+++ b/include/__config
@@ -569,12 +569,6 @@ template <unsigned> struct __static_assert_check {};
 #define _LIBCPP_WCTYPE_IS_MASK
 #endif
 
-#if defined(__APPLE__)
-#ifndef _LIBCPP_TRIVIAL_PAIR_COPY_CTOR
-#  define _LIBCPP_TRIVIAL_PAIR_COPY_CTOR 0
-#endif
-#endif
-
 #ifndef _LIBCPP_TRIVIAL_PAIR_COPY_CTOR
 #  define _LIBCPP_TRIVIAL_PAIR_COPY_CTOR 1
 #endif
