Revert "Update aosp/master libcxx rebase to r263688"

The world is burning.

This reverts commit c004fd909c, reversing
changes made to 1418e4163d.
This commit is contained in:
Dan Albert
2016-05-25 22:36:09 -07:00
parent c004fd909c
commit 1d4a1edbc7
1396 changed files with 11495 additions and 38952 deletions

View File

@@ -14,27 +14,7 @@
#include <array>
#include <cassert>
#include "test_macros.h"
// std::array is explicitly allowed to be initialized with A a = { init-list };.
// Disable the missing braces warning for this reason.
#include "disable_missing_braces_warning.h"
struct NonSwappable {
NonSwappable() {}
private:
NonSwappable(NonSwappable const&);
NonSwappable& operator=(NonSwappable const&);
};
template <class Tp>
decltype(swap(std::declval<Tp>(), std::declval<Tp>()))
can_swap_imp(int);
template <class Tp>
std::false_type can_swap_imp(...);
template <class Tp>
struct can_swap : std::is_same<decltype(can_swap_imp<Tp>(0)), void> {};
#include "../suppress_array_warnings.h"
int main()
{
@@ -62,24 +42,4 @@ int main()
assert(c1.size() == 0);
assert(c2.size() == 0);
}
{
typedef NonSwappable T;
typedef std::array<T, 0> C0;
static_assert(can_swap<C0&>::value, "");
C0 l = {};
C0 r = {};
swap(l, r);
#if TEST_STD_VER >= 11
static_assert(noexcept(swap(l, r)), "");
#endif
}
#if TEST_STD_VER >= 11
{
// NonSwappable is still considered swappable in C++03 because there
// is no access control SFINAE.
typedef NonSwappable T;
typedef std::array<T, 42> C1;
static_assert(!can_swap<C1&>::value, "");
}
#endif
}