diff options
author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2021-01-13 19:08:42 -0800 |
---|---|---|
committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2021-01-13 19:45:39 -0800 |
commit | 49142991a685bd427d7e877c29c77371dfb7634c (patch) | |
tree | d1ac716fb4b39ade450839c41a71b50c54ea2fa3 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 4c1617dac8fa13a8eac9cc4ac13a8f1fb3da512e (diff) | |
download | llvm-49142991a685bd427d7e877c29c77371dfb7634c.zip llvm-49142991a685bd427d7e877c29c77371dfb7634c.tar.gz llvm-49142991a685bd427d7e877c29c77371dfb7634c.tar.bz2 |
Reapply "ADT: Fix reference invalidation in SmallVector::push_back and single-element insert"
This reverts commit 56d1ffb927d03958a7a31442596df749264a7792, reapplying
9abac60309006db00eca0af406c2e16bef26807c, removing insert_one_maybe_copy
and using a helper called forward_value_param instead. This avoids use
of `std::is_same` (or any SFINAE), so I'm hoping it's more portable and
MSVC will be happier.
Original commit message follows:
For small enough, trivially copyable `T`, take the argument by value in
`SmallVector::push_back` and copy it when forwarding to
`SmallVector::insert_one_impl`. Otherwise, when growing, update the
argument appropriately.
Differential Revision: https://reviews.llvm.org/D93779
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions