* doc/xml/manual/status_cxx2017.xml: Document status. * doc/html/*: Regenerate. * include/Makefile.am: Add bits/node_handle.h and reorder. * include/Makefile.in: Regenerate. * include/bits/hashtable.h (_Hashtable::node_type) (_Hashtable::insert_return_type, _Hashtable::_M_reinsert_node) (_Hashtable::_M_reinsert_node_multi, _Hashtable::extract) (_Hashtable::_M_merge_unique, _Hashtable::_M_merge_multi): Define. (_Hash_merge_helper): Define primary template. * include/bits/node_handle.h: New header. * include/bits/stl_map.h (map): Declare _Rb_tree_merge_helper as friend. (map::node_type, map::insert_return_type, map::extract, map::merge) (map::insert(node_type&&), map::insert(const_iterator, node_type&&)): Define new members. (_Rb_tree_merge_helper): Specialize for map. * include/bits/stl_multimap.h (multimap): Declare _Rb_tree_merge_helper as friend. (multimap::node_type, multimap::extract, multimap::merge) (multimap::insert(node_type&&)) (multimap::insert(const_iterator, node_type&&)): Define. (_Rb_tree_merge_helper): Specialize for multimap. * include/bits/stl_multiset.h (multiset): Declare _Rb_tree_merge_helper as friend. (multiset::node_type, multiset::extract, multiset::merge) (multiset::insert(node_type&&)) (multiset::insert(const_iterator, node_type&&)): Define. * include/bits/stl_set.h (set): Declare _Rb_tree_merge_helper as friend. (set::node_type, set::insert_return_type, set::extract, set::merge) (set::insert(node_type&&), set::insert(const_iterator, node_type&&)): Define. (_Rb_tree_merge_helper): Specialize for set. * include/bits/stl_tree.h (_Rb_tree): Declare _Rb_tree<> as friend. (_Rb_tree::node_type, _Rb_tree::insert_return_type) (_Rb_tree::_M_reinsert_node_unique, _Rb_tree::_M_reinsert_node_equal) (_Rb_tree::_M_reinsert_node_hint_unique) (_Rb_tree::_M_reinsert_node_hint_equal, _Rb_tree::extract) (_Rb_tree::_M_merge_unique, _Rb_tree::_M_merge_equal): Define. (_Rb_tree_merge_helper): Specialize for multiset. * include/bits/unordered_map.h (unordered_map): Declare unordered_map<> and unordered_multimap<> as friends. (unordered_map::node_type, unordered_map::insert_return_type) (unordered_map::extract, unordered_map::merge) (unordered_map::insert(node_type&&)) (unordered_map::insert(const_iterator, node_type&&)) (unordered_multimap): Declare _Hash_merge_helper as friend. (unordered_multimap::node_type, unordered_multimap::extract) (unordered_multimap::merge, unordered_multimap::insert(node_type&&)) (unordered_multimap::insert(const_iterator, node_type&&)): Define. (_Hash_merge_helper): Specialize for unordered maps and multimaps. * include/bits/unordered_set.h (unordered_set, unordered_multiset): Declare _Hash_merge_helper as friend. (unordered_set::node_type, unordered_set::insert_return_type) (unordered_set::extract, unordered_set::merge) (unordered_set::insert(node_type&&)) (unordered_set::insert(const_iterator, node_type&&)): Define. (unordered_multiset::node_type, unordered_multiset::extract) (unordered_multiset::merge, unordered_multiset::insert(node_type&&)) (unordered_multiset::insert(const_iterator, node_type&&)): Define. (_Hash_merge_helper): Specialize for unordered sets and multisets. * include/debug/map.h (map): Add using declarations or forwarding functions for new members. * include/debug/map.h (multimap): Likewise. * include/debug/map.h (multiset): Likewise. * include/debug/map.h (set): Likewise. * include/debug/unordered_map (unordered_map, unordered_multimap): Likewise. * include/debug/unordered_set( unordered_set, unordered_multiset): Likewise. * python/libstdcxx/v6/printers.py (get_value_from_aligned_membuf): New helper function. (get_value_from_list_node, get_value_from_Rb_tree_node): Use helper. (StdNodeHandlePrinter): Define printer for node handles. (build_libstdcxx_dictionary): Register StdNodeHandlePrinter. * testsuite/23_containers/map/modifiers/extract.cc: New. * testsuite/23_containers/map/modifiers/merge.cc: New. * testsuite/23_containers/multimap/modifiers/extract.cc: New. * testsuite/23_containers/multimap/modifiers/merge.cc: New. * testsuite/23_containers/multiset/modifiers/extract.cc: New. * testsuite/23_containers/multiset/modifiers/merge.cc: New. * testsuite/23_containers/set/modifiers/extract.cc: New. * testsuite/23_containers/set/modifiers/merge.cc: New. * testsuite/23_containers/unordered_map/modifiers/extract.cc: New. * testsuite/23_containers/unordered_map/modifiers/merge.cc: New. * testsuite/23_containers/unordered_multimap/modifiers/extract.cc: New. * testsuite/23_containers/unordered_multimap/modifiers/merge.cc: New. * testsuite/23_containers/unordered_multiset/modifiers/extract.cc: New. * testsuite/23_containers/unordered_multiset/modifiers/merge.cc: New. * testsuite/23_containers/unordered_set/modifiers/extract.cc: New. * testsuite/23_containers/unordered_set/modifiers/merge.cc: New. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust dg-error lineno. * testsuite/libstdc++-prettyprinters/cxx17.cc: Test node handles. From-SVN: r240363
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| abi.html | Loading commit data... | |
| algorithms.html | Loading commit data... | |
| api.html | Loading commit data... | |
| appendix.html | Loading commit data... | |
| appendix_contributing.html | Loading commit data... | |
| appendix_free.html | Loading commit data... | |
| appendix_gfdl.html | Loading commit data... | |
| appendix_gpl.html | Loading commit data... | |
| appendix_porting.html | Loading commit data... | |
| associative.html | Loading commit data... | |
| atomics.html | Loading commit data... | |
| backwards.html | Loading commit data... | |
| bitmap_allocator.html | Loading commit data... | |
| bitmap_allocator_impl.html | Loading commit data... | |
| bugs.html | Loading commit data... | |
| concept_checking.html | Loading commit data... | |
| concurrency.html | Loading commit data... | |
| configure.html | Loading commit data... | |
| containers.html | Loading commit data... | |
| containers_and_c.html | Loading commit data... | |
| debug.html | Loading commit data... | |
| debug_mode.html | Loading commit data... | |
| debug_mode_design.html | Loading commit data... | |
| debug_mode_semantics.html | Loading commit data... | |
| debug_mode_using.html | Loading commit data... | |
| diagnostics.html | Loading commit data... | |
| documentation_hacking.html | Loading commit data... | |
| dynamic_memory.html | Loading commit data... | |
| errno.html | Loading commit data... | |
| ext_algorithms.html | Loading commit data... | |
| ext_compile_checks.html | Loading commit data... | |
| ext_concurrency.html | Loading commit data... | |
| ext_concurrency_impl.html | Loading commit data... | |
| ext_concurrency_use.html | Loading commit data... | |
| ext_containers.html | Loading commit data... | |
| ext_demangling.html | Loading commit data... | |
| ext_io.html | Loading commit data... | |
| ext_iterators.html | Loading commit data... | |
| ext_numerics.html | Loading commit data... | |
| ext_preface.html | Loading commit data... | |
| ext_sgi.html | Loading commit data... | |
| ext_utilities.html | Loading commit data... | |
| extensions.html | Loading commit data... | |
| facets.html | Loading commit data... | |
| fstreams.html | Loading commit data... | |
| generalized_numeric_operations.html | Loading commit data... | |
| index.html | Loading commit data... | |
| internals.html | Loading commit data... | |
| intro.html | Loading commit data... | |
| io.html | Loading commit data... | |
| io_and_c.html | Loading commit data... | |
| iterators.html | Loading commit data... | |
| license.html | Loading commit data... | |
| localization.html | Loading commit data... | |
| make.html | Loading commit data... | |
| memory.html | Loading commit data... | |
| mt_allocator.html | Loading commit data... | |
| mt_allocator_design.html | Loading commit data... | |
| mt_allocator_ex_multi.html | Loading commit data... | |
| mt_allocator_ex_single.html | Loading commit data... | |
| mt_allocator_impl.html | Loading commit data... | |
| numerics.html | Loading commit data... | |
| numerics_and_c.html | Loading commit data... | |
| pairs.html | Loading commit data... | |
| parallel_mode.html | Loading commit data... | |
| parallel_mode_design.html | Loading commit data... | |
| parallel_mode_semantics.html | Loading commit data... | |
| parallel_mode_test.html | Loading commit data... | |
| parallel_mode_using.html | Loading commit data... | |
| policy_based_data_structures_test.html | Loading commit data... | |
| policy_data_structures.html | Loading commit data... | |
| policy_data_structures_ack.html | Loading commit data... | |
| policy_data_structures_design.html | Loading commit data... | |
| policy_data_structures_using.html | Loading commit data... | |
| profile_mode.html | Loading commit data... | |
| profile_mode_api.html | Loading commit data... | |
| profile_mode_cost_model.html | Loading commit data... | |
| profile_mode_design.html | Loading commit data... | |
| profile_mode_devel.html | Loading commit data... | |
| profile_mode_diagnostics.html | Loading commit data... | |
| profile_mode_impl.html | Loading commit data... | |
| setup.html | Loading commit data... | |
| source_code_style.html | Loading commit data... | |
| source_design_notes.html | Loading commit data... | |
| source_organization.html | Loading commit data... | |
| status.html | Loading commit data... | |
| std_contents.html | Loading commit data... | |
| streambufs.html | Loading commit data... | |
| strings.html | Loading commit data... | |
| stringstreams.html | Loading commit data... | |
| support.html | Loading commit data... | |
| termination.html | Loading commit data... | |
| test.html | Loading commit data... | |
| traits.html | Loading commit data... | |
| unordered_associative.html | Loading commit data... | |
| using.html | Loading commit data... | |
| using_concurrency.html | Loading commit data... | |
| using_dual_abi.html | Loading commit data... | |
| using_dynamic_or_shared.html | Loading commit data... | |
| using_exceptions.html | Loading commit data... | |
| using_headers.html | Loading commit data... | |
| using_macros.html | Loading commit data... | |
| using_namespaces.html | Loading commit data... | |
| utilities.html | Loading commit data... |