N3644 tests for map/multimap/set/multiset. Drive-by NOEXCEPT for __tree_const_iterator constructor. Fix comment typos in other tests
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@188019 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
a4e87abbb9
commit
051c848e88
@ -641,7 +641,11 @@ public:
|
|||||||
#endif
|
#endif
|
||||||
pointer;
|
pointer;
|
||||||
|
|
||||||
_LIBCPP_INLINE_VISIBILITY __tree_iterator() _NOEXCEPT {}
|
_LIBCPP_INLINE_VISIBILITY __tree_iterator() _NOEXCEPT
|
||||||
|
#if _LIBCPP_STD_VER > 11
|
||||||
|
: __ptr_(nullptr)
|
||||||
|
#endif
|
||||||
|
{}
|
||||||
|
|
||||||
_LIBCPP_INLINE_VISIBILITY reference operator*() const {return __ptr_->__value_;}
|
_LIBCPP_INLINE_VISIBILITY reference operator*() const {return __ptr_->__value_;}
|
||||||
_LIBCPP_INLINE_VISIBILITY pointer operator->() const
|
_LIBCPP_INLINE_VISIBILITY pointer operator->() const
|
||||||
@ -712,7 +716,12 @@ public:
|
|||||||
#endif
|
#endif
|
||||||
pointer;
|
pointer;
|
||||||
|
|
||||||
_LIBCPP_INLINE_VISIBILITY __tree_const_iterator() {}
|
_LIBCPP_INLINE_VISIBILITY __tree_const_iterator() _NOEXCEPT
|
||||||
|
#if _LIBCPP_STD_VER > 11
|
||||||
|
: __ptr_(nullptr)
|
||||||
|
#endif
|
||||||
|
{}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
typedef typename remove_const<__node>::type __non_const_node;
|
typedef typename remove_const<__node>::type __non_const_node;
|
||||||
typedef typename pointer_traits<__node_pointer>::template
|
typedef typename pointer_traits<__node_pointer>::template
|
||||||
|
@ -207,4 +207,18 @@ int main()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
#if _LIBCPP_STD_VER > 11
|
||||||
|
{ // N3644 testing
|
||||||
|
typedef std::map<int, double> C;
|
||||||
|
C::iterator ii1{}, ii2{};
|
||||||
|
C::iterator ii4 = ii1;
|
||||||
|
C::const_iterator cii{};
|
||||||
|
assert ( ii1 == ii2 );
|
||||||
|
assert ( ii1 == ii4 );
|
||||||
|
assert ( ii1 == cii );
|
||||||
|
|
||||||
|
assert ( !(ii1 != ii2 ));
|
||||||
|
assert ( !(ii1 != cii ));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
@ -211,4 +211,18 @@ int main()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
#if _LIBCPP_STD_VER > 11
|
||||||
|
{ // N3644 testing
|
||||||
|
typedef std::multimap<int, double> C;
|
||||||
|
C::iterator ii1{}, ii2{};
|
||||||
|
C::iterator ii4 = ii1;
|
||||||
|
C::const_iterator cii{};
|
||||||
|
assert ( ii1 == ii2 );
|
||||||
|
assert ( ii1 == ii4 );
|
||||||
|
assert ( ii1 == cii );
|
||||||
|
|
||||||
|
assert ( !(ii1 != ii2 ));
|
||||||
|
assert ( !(ii1 != cii ));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
@ -195,4 +195,18 @@ int main()
|
|||||||
assert(*i == j);
|
assert(*i == j);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
#if _LIBCPP_STD_VER > 11
|
||||||
|
{ // N3644 testing
|
||||||
|
typedef std::multiset<int> C;
|
||||||
|
C::iterator ii1{}, ii2{};
|
||||||
|
C::iterator ii4 = ii1;
|
||||||
|
C::const_iterator cii{};
|
||||||
|
assert ( ii1 == ii2 );
|
||||||
|
assert ( ii1 == ii4 );
|
||||||
|
assert ( ii1 == cii );
|
||||||
|
|
||||||
|
assert ( !(ii1 != ii2 ));
|
||||||
|
assert ( !(ii1 != cii ));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
@ -191,4 +191,18 @@ int main()
|
|||||||
assert(*i == j);
|
assert(*i == j);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
#if _LIBCPP_STD_VER > 11
|
||||||
|
{ // N3644 testing
|
||||||
|
typedef std::set<int> C;
|
||||||
|
C::iterator ii1{}, ii2{};
|
||||||
|
C::iterator ii4 = ii1;
|
||||||
|
C::const_iterator cii{};
|
||||||
|
assert ( ii1 == ii2 );
|
||||||
|
assert ( ii1 == ii4 );
|
||||||
|
assert ( ii1 == cii );
|
||||||
|
|
||||||
|
assert ( !(ii1 != ii2 ));
|
||||||
|
assert ( !(ii1 != cii ));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
@ -37,7 +37,7 @@ int main()
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if _LIBCPP_STD_VER > 11
|
#if _LIBCPP_STD_VER > 11
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
{
|
{
|
||||||
typedef std::array<int, 5> C;
|
typedef std::array<int, 5> C;
|
||||||
C::iterator ii1{}, ii2{};
|
C::iterator ii1{}, ii2{};
|
||||||
|
@ -45,7 +45,7 @@ int main()
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if _LIBCPP_STD_VER > 11
|
#if _LIBCPP_STD_VER > 11
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
std::deque<int>::iterator ii1{}, ii2{};
|
std::deque<int>::iterator ii1{}, ii2{};
|
||||||
std::deque<int>::iterator ii4 = ii1;
|
std::deque<int>::iterator ii4 = ii1;
|
||||||
std::deque<int>::const_iterator cii{};
|
std::deque<int>::const_iterator cii{};
|
||||||
|
@ -121,7 +121,7 @@ int main()
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if _LIBCPP_STD_VER > 11
|
#if _LIBCPP_STD_VER > 11
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
std::forward_list<int>::iterator ii1{}, ii2{};
|
std::forward_list<int>::iterator ii1{}, ii2{};
|
||||||
std::forward_list<int>::iterator ii4 = ii1;
|
std::forward_list<int>::iterator ii4 = ii1;
|
||||||
std::forward_list<int>::const_iterator cii{};
|
std::forward_list<int>::const_iterator cii{};
|
||||||
|
@ -95,7 +95,7 @@ int main()
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if _LIBCPP_STD_VER > 11
|
#if _LIBCPP_STD_VER > 11
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
std::vector<bool>::iterator ii1{}, ii2{};
|
std::vector<bool>::iterator ii1{}, ii2{};
|
||||||
std::vector<bool>::iterator ii4 = ii1;
|
std::vector<bool>::iterator ii4 = ii1;
|
||||||
std::vector<bool>::const_iterator cii{};
|
std::vector<bool>::const_iterator cii{};
|
||||||
|
@ -136,7 +136,7 @@ int main()
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if _LIBCPP_STD_VER > 11
|
#if _LIBCPP_STD_VER > 11
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
typedef std::vector<int> C;
|
typedef std::vector<int> C;
|
||||||
C::iterator ii1{}, ii2{};
|
C::iterator ii1{}, ii2{};
|
||||||
C::iterator ii4 = ii1;
|
C::iterator ii4 = ii1;
|
||||||
|
@ -109,7 +109,7 @@ int main()
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if _LIBCPP_STD_VER > 11
|
#if _LIBCPP_STD_VER > 11
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
typedef std::unordered_map<int,double> C;
|
typedef std::unordered_map<int,double> C;
|
||||||
C::iterator ii1{}, ii2{};
|
C::iterator ii1{}, ii2{};
|
||||||
C::iterator ii4 = ii1;
|
C::iterator ii4 = ii1;
|
||||||
|
@ -115,7 +115,7 @@ int main()
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if _LIBCPP_STD_VER > 11
|
#if _LIBCPP_STD_VER > 11
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
typedef std::unordered_multimap<int,double> C;
|
typedef std::unordered_multimap<int,double> C;
|
||||||
C::iterator ii1{}, ii2{};
|
C::iterator ii1{}, ii2{};
|
||||||
C::iterator ii4 = ii1;
|
C::iterator ii4 = ii1;
|
||||||
|
@ -108,7 +108,7 @@ int main()
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if _LIBCPP_STD_VER > 11
|
#if _LIBCPP_STD_VER > 11
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
typedef std::unordered_multiset<int> C;
|
typedef std::unordered_multiset<int> C;
|
||||||
C::iterator ii1{}, ii2{};
|
C::iterator ii1{}, ii2{};
|
||||||
C::iterator ii4 = ii1;
|
C::iterator ii4 = ii1;
|
||||||
|
@ -108,7 +108,7 @@ int main()
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if _LIBCPP_STD_VER > 11
|
#if _LIBCPP_STD_VER > 11
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
typedef std::unordered_set<int> C;
|
typedef std::unordered_set<int> C;
|
||||||
C::iterator ii1{}, ii2{};
|
C::iterator ii1{}, ii2{};
|
||||||
C::iterator ii4 = ii1;
|
C::iterator ii4 = ii1;
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
#if _LIBCPP_STD_VER > 11
|
#if _LIBCPP_STD_VER > 11
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
typedef std::string C;
|
typedef std::string C;
|
||||||
C::iterator ii1{}, ii2{};
|
C::iterator ii1{}, ii2{};
|
||||||
C::iterator ii4 = ii1;
|
C::iterator ii4 = ii1;
|
||||||
@ -34,7 +34,7 @@ int main()
|
|||||||
assert ( !(ii1 != cii ));
|
assert ( !(ii1 != cii ));
|
||||||
}
|
}
|
||||||
|
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
typedef std::wstring C;
|
typedef std::wstring C;
|
||||||
C::iterator ii1{}, ii2{};
|
C::iterator ii1{}, ii2{};
|
||||||
C::iterator ii4 = ii1;
|
C::iterator ii4 = ii1;
|
||||||
@ -46,7 +46,7 @@ int main()
|
|||||||
assert ( !(ii1 != cii ));
|
assert ( !(ii1 != cii ));
|
||||||
}
|
}
|
||||||
|
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
typedef std::u16string C;
|
typedef std::u16string C;
|
||||||
C::iterator ii1{}, ii2{};
|
C::iterator ii1{}, ii2{};
|
||||||
C::iterator ii4 = ii1;
|
C::iterator ii4 = ii1;
|
||||||
@ -58,7 +58,7 @@ int main()
|
|||||||
assert ( !(ii1 != cii ));
|
assert ( !(ii1 != cii ));
|
||||||
}
|
}
|
||||||
|
|
||||||
{ // N3664 testing
|
{ // N3644 testing
|
||||||
typedef std::u32string C;
|
typedef std::u32string C;
|
||||||
C::iterator ii1{}, ii2{};
|
C::iterator ii1{}, ii2{};
|
||||||
C::iterator ii4 = ii1;
|
C::iterator ii4 = ii1;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user