2015-08-09 Ville Voutilainen <ville.voutilainen@gmail.com>
commited5623716e0e53f1ce232655a699cb52b0f421d8
authorville <ville@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 8 Aug 2015 22:57:13 +0000 (8 22:57 +0000)
committerville <ville@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 8 Aug 2015 22:57:13 +0000 (8 22:57 +0000)
treeae95c860f7ec2ca9538a596d7fdb30ceddcf540e
parent61c51bdb40653f759c0ac1aaca9172fc578e0ac1
2015-08-09  Ville Voutilainen  <ville.voutilainen@gmail.com>

Implement N4279, Improved insertion interface for unique-key maps.
* include/bits/stl_map.h (try_emplace, insert_or_assign): New.
* include/bits/stl_tree.h (_M_get_insert_unique_pos,
_M_get_insert_equal_pos, _M_get_insert_hint_unique_pos,
_M_get_insert_hint_equal_pos): Make public.
* include/bits/unordered_map.h (try_emplace, insert_or_assign): New.
* testsuite/23_containers/map/modifiers/insert_or_assign/1.cc:
Likewise.
* testsuite/23_containers/map/modifiers/try_emplace/1.cc: Likewise.
* testsuite/23_containers/unordered_map/modifiers/insert_or_assign.cc:
Likewise.
* testsuite/23_containers/unordered_map/modifiers/try_emplace.cc:
Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226743 138bc75d-0d04-0410-961f-82ee72b054a4
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/stl_map.h
libstdc++-v3/include/bits/stl_tree.h
libstdc++-v3/include/bits/unordered_map.h
libstdc++-v3/testsuite/23_containers/map/modifiers/insert_or_assign/1.cc [new file with mode: 0644]
libstdc++-v3/testsuite/23_containers/map/modifiers/try_emplace/1.cc [new file with mode: 0644]
libstdc++-v3/testsuite/23_containers/unordered_map/modifiers/insert_or_assign.cc [new file with mode: 0644]
libstdc++-v3/testsuite/23_containers/unordered_map/modifiers/try_emplace.cc [new file with mode: 0644]