diff options
author | Louis Dionne <ldionne.2@gmail.com> | 2021-08-11 14:26:33 -0400 |
---|---|---|
committer | Louis Dionne <ldionne.2@gmail.com> | 2021-08-17 11:32:40 -0400 |
commit | ceff0b7258aefc6e5299802c119b3d01545440f4 (patch) | |
tree | 256d94c6d394726dacdde4049b3059e204d73cf3 /llvm/tools/llvm-objdump/llvm-objdump.cpp | |
parent | ad40cb8821666a255ad9982b99ea0ce13a57dfaa (diff) | |
download | llvm-ceff0b7258aefc6e5299802c119b3d01545440f4.zip llvm-ceff0b7258aefc6e5299802c119b3d01545440f4.tar.gz llvm-ceff0b7258aefc6e5299802c119b3d01545440f4.tar.bz2 |
[libc++] Do not require movability in __non_propagating_cache::__emplace_deref
As explained in http://eel.is/c++draft/range.nonprop.cache#note-1, we
should allow copy and move elision to happen when calling emplace_deref
in non-propagating-cache. Before this change, the only way to emplace
into the non-propagating-cache was to call `__set(*it)`, which materialized
`*it` when binding it to the reference argument of `__set` and disabled
move elision.
As a fly-by change, this also renames `__set` to `__emplace` for consistency
and adds tests for it.
Differential Revision: https://reviews.llvm.org/D107932
Diffstat (limited to 'llvm/tools/llvm-objdump/llvm-objdump.cpp')
0 files changed, 0 insertions, 0 deletions