While applying N4258, I forgot about LWG#2455, which modified the modifications. Correct those - h/t: Howard

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@239004 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Marshall Clow 2015-06-04 02:05:41 +00:00
parent 127db91f3e
commit c912c0ce7c
6 changed files with 5 additions and 51 deletions

View File

@ -1321,11 +1321,7 @@ public:
static const size_type npos = -1;
_LIBCPP_INLINE_VISIBILITY basic_string()
#if _LIBCPP_STD_VER <= 14
_NOEXCEPT_(is_nothrow_default_constructible<allocator_type>::value);
#else
_NOEXCEPT;
#endif
_LIBCPP_INLINE_VISIBILITY explicit basic_string(const allocator_type& __a)
#if _LIBCPP_STD_VER <= 14
@ -1943,11 +1939,7 @@ basic_string<_CharT, _Traits, _Allocator>::__invalidate_iterators_past(size_type
template <class _CharT, class _Traits, class _Allocator>
inline _LIBCPP_INLINE_VISIBILITY
basic_string<_CharT, _Traits, _Allocator>::basic_string()
#if _LIBCPP_STD_VER <= 14
_NOEXCEPT_(is_nothrow_default_constructible<allocator_type>::value)
#else
_NOEXCEPT
#endif
_NOEXCEPT_(is_nothrow_default_constructible<allocator_type>::value)
{
#if _LIBCPP_DEBUG_LEVEL >= 2
__get_db()->__insert_c(this);

View File

@ -500,12 +500,7 @@ public:
"Allocator::value_type must be same type as value_type");
_LIBCPP_INLINE_VISIBILITY
vector()
#if _LIBCPP_STD_VER <= 14
_NOEXCEPT_(is_nothrow_default_constructible<allocator_type>::value)
#else
_NOEXCEPT
#endif
vector() _NOEXCEPT_(is_nothrow_default_constructible<allocator_type>::value)
{
#if _LIBCPP_DEBUG_LEVEL >= 2
__get_db()->__insert_c(this);
@ -2170,12 +2165,7 @@ private:
public:
_LIBCPP_INLINE_VISIBILITY
vector()
#if _LIBCPP_STD_VER <= 14
_NOEXCEPT_(is_nothrow_default_constructible<allocator_type>::value);
#else
_NOEXCEPT;
#endif
vector() _NOEXCEPT_(is_nothrow_default_constructible<allocator_type>::value);
_LIBCPP_INLINE_VISIBILITY explicit vector(const allocator_type& __a)
#if _LIBCPP_STD_VER <= 14
@ -2569,11 +2559,7 @@ vector<bool, _Allocator>::__construct_at_end(_ForwardIterator __first, _ForwardI
template <class _Allocator>
inline _LIBCPP_INLINE_VISIBILITY
vector<bool, _Allocator>::vector()
#if _LIBCPP_STD_VER <= 14
_NOEXCEPT_(is_nothrow_default_constructible<allocator_type>::value)
#else
_NOEXCEPT
#endif
_NOEXCEPT_(is_nothrow_default_constructible<allocator_type>::value)
: __begin_(nullptr),
__size_(0),
__cap_alloc_(0)

View File

@ -39,21 +39,11 @@ int main()
}
{
typedef std::vector<bool, other_allocator<bool>> C;
// See N4258 - vector<T, Allocator>::basic_string() noexcept;
#if TEST_STD_VER <= 14
static_assert(!std::is_nothrow_default_constructible<C>::value, "");
#else
static_assert( std::is_nothrow_default_constructible<C>::value, "");
#endif
}
{
typedef std::vector<bool, some_alloc<bool>> C;
// See N4258 - vector<T, Allocator>::basic_string() noexcept;
#if TEST_STD_VER <= 14
static_assert(!std::is_nothrow_default_constructible<C>::value, "");
#else
static_assert( std::is_nothrow_default_constructible<C>::value, "");
#endif
}
#endif
}

View File

@ -15,6 +15,7 @@
#include <vector>
#include <cassert>
#include "test_macros.h"
#include "test_allocator.h"
#include "../../../NotConstructible.h"
#include "../../../stack_allocator.h"

View File

@ -41,21 +41,11 @@ int main()
}
{
typedef std::vector<MoveOnly, other_allocator<MoveOnly>> C;
// See N4258 - vector<T, Allocator>::basic_string() noexcept;
#if TEST_STD_VER <= 14
static_assert(!std::is_nothrow_default_constructible<C>::value, "");
#else
static_assert( std::is_nothrow_default_constructible<C>::value, "");
#endif
}
{
typedef std::vector<MoveOnly, some_alloc<MoveOnly>> C;
// See N4258 - vector<T, Allocator>::basic_string() noexcept;
#if TEST_STD_VER <= 14
static_assert(!std::is_nothrow_default_constructible<C>::value, "");
#else
static_assert( std::is_nothrow_default_constructible<C>::value, "");
#endif
}
#endif
}

View File

@ -40,12 +40,7 @@ int main()
}
{
typedef std::basic_string<char, std::char_traits<char>, some_alloc<char>> C;
// See N4258 - basic_string<char, traits, Allocator>::basic_string() noexcept;
#if TEST_STD_VER <= 14
static_assert(!std::is_nothrow_default_constructible<C>::value, "");
#else
static_assert( std::is_nothrow_default_constructible<C>::value, "");
#endif
}
#endif
}