From 17aeebb81bf0b587103068f0abd9293418cc2e24 Mon Sep 17 00:00:00 2001 From: fdumont Date: Thu, 28 Dec 2017 05:37:54 +0000 Subject: =?UTF-8?q?2017-12-28=20=20Fran=C3=A7ois=20Dumont=20=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Backport from mainline 2017-12-20 François Dumont PR libstdc++/82522 * include/debug/map.h (map::insert(value_type&&)) (map::insert(const_iterator, value_type&&)): Add overload for rvalues. * include/debug/multimap.h (multimap::insert(value_type&&)) (multimap::insert(const_iterator, value_type&&)): Likewise. * include/debug/unordered_map (unordered_map::insert(value_type&&)) (unordered_map::insert(const_iterator, value_type&&)) (unordered_multimap::insert(value_type&&)) (unordered_multimap::insert(const_iterator, value_type&&)): Likewise. * testsuite/23_containers/map/modifiers/insert/dr2354.cc (test02): New. * testsuite/23_containers/multimap/modifiers/insert/dr2354.cc (test02): New. * testsuite/23_containers/unordered_map/insert/dr2354.cc (test02): New. * testsuite/23_containers/unordered_multimap/insert/dr2354.cc (test02): New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256018 138bc75d-0d04-0410-961f-82ee72b054a4 --- .../testsuite/23_containers/map/modifiers/insert/dr2354.cc | 7 +++++++ .../testsuite/23_containers/multimap/modifiers/insert/dr2354.cc | 7 +++++++ .../testsuite/23_containers/unordered_map/insert/dr2354.cc | 7 +++++++ .../testsuite/23_containers/unordered_multimap/insert/dr2354.cc | 7 +++++++ 4 files changed, 28 insertions(+) (limited to 'libstdc++-v3/testsuite') diff --git a/libstdc++-v3/testsuite/23_containers/map/modifiers/insert/dr2354.cc b/libstdc++-v3/testsuite/23_containers/map/modifiers/insert/dr2354.cc index 338d9fd3f1e7..cc0fcbb46772 100644 --- a/libstdc++-v3/testsuite/23_containers/map/modifiers/insert/dr2354.cc +++ b/libstdc++-v3/testsuite/23_containers/map/modifiers/insert/dr2354.cc @@ -30,3 +30,10 @@ test01() std::map m; m.insert({1, 2}); // PR libstdc++/82522 - LWG 2354 } + +void +test02() +{ + std::map m; + m.insert(m.begin(), {1, 2}); // PR libstdc++/82522 - LWG 2354 +} diff --git a/libstdc++-v3/testsuite/23_containers/multimap/modifiers/insert/dr2354.cc b/libstdc++-v3/testsuite/23_containers/multimap/modifiers/insert/dr2354.cc index ca743ec4ce99..73cbf4cf6d46 100644 --- a/libstdc++-v3/testsuite/23_containers/multimap/modifiers/insert/dr2354.cc +++ b/libstdc++-v3/testsuite/23_containers/multimap/modifiers/insert/dr2354.cc @@ -30,3 +30,10 @@ test01() std::multimap m; m.insert({1, 2}); // PR libstdc++/82522 - LWG 2354 } + +void +test02() +{ + std::multimap m; + m.insert(m.begin(), {1, 2}); // PR libstdc++/82522 - LWG 2354 +} diff --git a/libstdc++-v3/testsuite/23_containers/unordered_map/insert/dr2354.cc b/libstdc++-v3/testsuite/23_containers/unordered_map/insert/dr2354.cc index fe5356594c3a..3507efa34a24 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_map/insert/dr2354.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_map/insert/dr2354.cc @@ -30,3 +30,10 @@ test01() std::unordered_map m; m.insert({1, 2}); // PR libstdc++/82522 - LWG 2354 } + +void +test02() +{ + std::unordered_map m; + m.insert(m.begin(), {1, 2}); // PR libstdc++/82522 - LWG 2354 +} diff --git a/libstdc++-v3/testsuite/23_containers/unordered_multimap/insert/dr2354.cc b/libstdc++-v3/testsuite/23_containers/unordered_multimap/insert/dr2354.cc index 5a27242c4e0d..ff661132a09e 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_multimap/insert/dr2354.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_multimap/insert/dr2354.cc @@ -30,3 +30,10 @@ test01() std::unordered_multimap m; m.insert({1, 2}); // PR libstdc++/82522 - LWG 2354 } + +void +test02() +{ + std::unordered_multimap m; + m.insert(m.begin(), {1, 2}); // PR libstdc++/82522 - LWG 2354 +} -- cgit v1.2.3