Go to file
Eric Fiselier 1c0cedccb6 [libc++] Fix PR34898 - vector iterator constructors and assign method perform push_back instead of emplace_back.
Summary:
The constructors `vector(Iter, Iter, Alloc = Alloc{})` and `assign(Iter, Iter)` don't correctly perform EmplaceConstruction from the result of dereferencing the iterator. This results in them performing an additional and unneeded copy.

This patch addresses the issue by correctly using `emplace_back` in C++11 and newer.

There are also some bugs in our `insert` implementation, but those will be handled separately. 

@mclow.lists We should probably merge this into 5.1, agreed?

Reviewers: mclow.lists, dlj, EricWF

Reviewed By: mclow.lists, EricWF

Subscribers: cfe-commits, mclow.lists

Differential Revision: https://reviews.llvm.org/D38757

llvm-svn: 315994
2017-10-17 13:03:17 +00:00
clang [CodeGen] Refine generation of TBAA info for bit-field lvalues 2017-10-17 11:20:19 +00:00
clang-tools-extra [change-namespace] do not change type locs in defaulted functions. 2017-10-16 08:20:10 +00:00
compiler-rt [XRay][compiler-rt] Always place the CPU record first for every buffer 2017-10-17 10:33:24 +00:00
debuginfo-tests Revert r313600 due to bot failures on Green Dragon. 2017-09-19 14:51:37 +00:00
libclc travis: enable checks of nvptx libraries 2017-10-10 18:10:25 +00:00
libcxx [libc++] Fix PR34898 - vector iterator constructors and assign method perform push_back instead of emplace_back. 2017-10-17 13:03:17 +00:00
libcxxabi Fix ASAN build with older compiler-rt versions. 2017-09-14 22:37:34 +00:00
libunwind libunwind: document tested FreeBSD configs and sort OS list 2017-10-14 17:04:04 +00:00
lld [ELF] - Removed unused class from Options.td. NFC. 2017-10-17 12:23:51 +00:00
lldb Reverting r315966 - it caused a build failure on an ubuntu x android bot. 2017-10-17 03:13:39 +00:00
llgo irgen: Create functions instead of global variables for builtin hash and equal algorithms. 2017-06-04 22:11:28 +00:00
llvm Improve clamp recognition in ValueTracking. 2017-10-17 11:50:48 +00:00
openmp KMP_HW_SUBSET vs KMP_PLACE_THREADS rival envirables fix 2017-10-06 19:23:19 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly [Polly] Add XFAIL to large-numbers-in-boundary-context.ll 2017-10-16 15:12:39 +00:00