Cleanup _LIBCPP_HAS_NO_<c++11-feature> in support headers and final tests
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@300637 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -13,6 +13,7 @@
|
||||
#include <vector>
|
||||
#include <cassert>
|
||||
|
||||
#include "test_macros.h"
|
||||
#include "asan_testing.h"
|
||||
|
||||
class X {
|
||||
@@ -70,7 +71,7 @@ void test_push_back() {
|
||||
}
|
||||
|
||||
void test_emplace_back() {
|
||||
#ifndef _LIBCPP_HAS_NO_VARIADICS
|
||||
#if TEST_STD_VER >= 11
|
||||
std::vector<X> v;
|
||||
v.reserve(2);
|
||||
v.push_back(X(2));
|
||||
@@ -83,7 +84,7 @@ void test_emplace_back() {
|
||||
}
|
||||
assert(v.size() == 1);
|
||||
assert(is_contiguous_container_asan_correct(v));
|
||||
#endif // _LIBCPP_HAS_NO_VARIADICS
|
||||
#endif
|
||||
}
|
||||
|
||||
void test_insert_range() {
|
||||
@@ -121,7 +122,7 @@ void test_insert() {
|
||||
}
|
||||
|
||||
void test_emplace() {
|
||||
#ifndef _LIBCPP_HAS_NO_VARIADICS
|
||||
#if TEST_STD_VER >= 11
|
||||
std::vector<X> v;
|
||||
v.reserve(3);
|
||||
v.insert(v.end(), X(1));
|
||||
@@ -135,7 +136,7 @@ void test_emplace() {
|
||||
}
|
||||
assert(v.size() == 2);
|
||||
assert(is_contiguous_container_asan_correct(v));
|
||||
#endif // _LIBCPP_HAS_NO_VARIADICS
|
||||
#endif
|
||||
}
|
||||
|
||||
void test_insert_range2() {
|
||||
|
||||
@@ -179,7 +179,7 @@ int main()
|
||||
static_assert(( std::__libcpp_is_trivial_iterator<std::basic_string<char>::reverse_iterator> ::value), "");
|
||||
static_assert(( std::__libcpp_is_trivial_iterator<std::basic_string<char>::const_reverse_iterator>::value), "");
|
||||
|
||||
#ifndef _LIBCPP_HAS_NO_GENERALIZED_INITIALIZERS
|
||||
#if TEST_STD_VER >= 11
|
||||
// Initializer list (which has no reverse iterators)
|
||||
static_assert(( std::__libcpp_is_trivial_iterator<std::initializer_list<char>::iterator> ::value), "");
|
||||
static_assert(( std::__libcpp_is_trivial_iterator<std::initializer_list<char>::const_iterator> ::value), "");
|
||||
|
||||
@@ -80,7 +80,7 @@ int main()
|
||||
static_assert(( std::__libcpp_string_gets_noexcept_iterator<std::basic_string<char>::reverse_iterator> ::value), "");
|
||||
static_assert(( std::__libcpp_string_gets_noexcept_iterator<std::basic_string<char>::const_reverse_iterator>::value), "");
|
||||
|
||||
#ifndef _LIBCPP_HAS_NO_GENERALIZED_INITIALIZERS
|
||||
#if TEST_STD_VER >= 11
|
||||
// Initializer list (which has no reverse iterators)
|
||||
static_assert(( std::__libcpp_string_gets_noexcept_iterator<std::initializer_list<char>::iterator> ::value), "");
|
||||
static_assert(( std::__libcpp_string_gets_noexcept_iterator<std::initializer_list<char>::const_iterator> ::value), "");
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
#include <vector>
|
||||
#include <initializer_list>
|
||||
|
||||
#include "test_macros.h"
|
||||
#include "test_iterators.h"
|
||||
|
||||
int main()
|
||||
@@ -72,7 +73,7 @@ int main()
|
||||
static_assert(( std::__libcpp_string_gets_noexcept_iterator<std::basic_string<char>::reverse_iterator> ::value), "");
|
||||
static_assert(( std::__libcpp_string_gets_noexcept_iterator<std::basic_string<char>::const_reverse_iterator>::value), "");
|
||||
|
||||
#ifndef _LIBCPP_HAS_NO_GENERALIZED_INITIALIZERS
|
||||
#if TEST_STD_VER >= 11
|
||||
// Initializer list (which has no reverse iterators)
|
||||
static_assert(( std::__libcpp_string_gets_noexcept_iterator<std::initializer_list<char>::iterator> ::value), "");
|
||||
static_assert(( std::__libcpp_string_gets_noexcept_iterator<std::initializer_list<char>::const_iterator> ::value), "");
|
||||
|
||||
@@ -7,6 +7,8 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// UNSUPPORTED: c++98, c++03
|
||||
|
||||
// type_traits
|
||||
|
||||
// extension
|
||||
@@ -16,7 +18,6 @@
|
||||
|
||||
#include <type_traits>
|
||||
|
||||
#ifndef _LIBCPP_HAS_NO_CONSTEXPR
|
||||
|
||||
struct A
|
||||
{
|
||||
@@ -54,11 +55,9 @@ struct J
|
||||
constexpr J* operator&() const &&;
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_HAS_NO_CONSTEXPR
|
||||
|
||||
int main()
|
||||
{
|
||||
#ifndef _LIBCPP_HAS_NO_CONSTEXPR
|
||||
static_assert(std::__has_operator_addressof<int>::value == false, "");
|
||||
static_assert(std::__has_operator_addressof<A>::value == false, "");
|
||||
static_assert(std::__has_operator_addressof<B>::value == true, "");
|
||||
@@ -67,5 +66,4 @@ int main()
|
||||
static_assert(std::__has_operator_addressof<G>::value == true, "");
|
||||
static_assert(std::__has_operator_addressof<H>::value == true, "");
|
||||
static_assert(std::__has_operator_addressof<J>::value == true, "");
|
||||
#endif // _LIBCPP_HAS_NO_CONSTEXPR
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user