aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include/bits/node_handle.h
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2017-05-15 13:47:40 +0000
committerJonathan Wakely <jwakely@redhat.com>2017-05-15 13:47:40 +0000
commit3119cf948421d1e078fa7f2a9905b748875c7bf8 (patch)
treeb9923cca1788e3adff2b0691135820d154b9c635 /libstdc++-v3/include/bits/node_handle.h
parent2dba2c4de871a1fab29ed95e0f172e7a86a59075 (diff)
Fix order and types of members in C++17 insert_return_type structs
PR libstdc++/80761 * include/bits/node_handle.h (_Node_insert_return): Reorder members. (tuple_size, tuple_element): Remove partial specializations. * include/bits/stl_tree.h (_Rb_tree::insert_return_type): Use const_iterator for std::set. * testsuite/23_containers/map/modifiers/extract.cc: New. * testsuite/23_containers/set/modifiers/extract.cc: New. * testsuite/23_containers/unordered_map/modifiers/extract.cc: New. * testsuite/23_containers/unordered_set/modifiers/extract.cc: New. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@248062 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include/bits/node_handle.h')
-rw-r--r--libstdc++-v3/include/bits/node_handle.h18
1 files changed, 1 insertions, 17 deletions
diff --git a/libstdc++-v3/include/bits/node_handle.h b/libstdc++-v3/include/bits/node_handle.h
index 44a92644cd5..c7694a1e0ef 100644
--- a/libstdc++-v3/include/bits/node_handle.h
+++ b/libstdc++-v3/include/bits/node_handle.h
@@ -280,8 +280,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Iterator, typename _NodeHandle>
struct _Node_insert_return
{
- bool inserted = false;
_Iterator position = _Iterator();
+ bool inserted = false;
_NodeHandle node;
template<size_t _Idx>
@@ -305,22 +305,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
};
- template<typename _Iterator, typename _NodeHandle>
- struct tuple_size<_Node_insert_return<_Iterator, _NodeHandle>>
- : integral_constant<size_t, 3> { };
-
- template<typename _Iterator, typename _NodeHandle>
- struct tuple_element<0, _Node_insert_return<_Iterator, _NodeHandle>>
- { using type = bool; };
-
- template<typename _Iterator, typename _NodeHandle>
- struct tuple_element<1, _Node_insert_return<_Iterator, _NodeHandle>>
- { using type = _Iterator; };
-
- template<typename _Iterator, typename _NodeHandle>
- struct tuple_element<2, _Node_insert_return<_Iterator, _NodeHandle>>
- { using type = _NodeHandle; };
-
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace std