[all-commits] [llvm/llvm-project] f9b6fd: [libc++] Support immovable return types in std::fu...
Quuxplusone via All-commits
all-commits at lists.llvm.org
Mon Jan 25 16:39:26 PST 2021
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: f9b6fd269b6fd2b085c3537b6730a02503430ef0
https://github.com/llvm/llvm-project/commit/f9b6fd269b6fd2b085c3537b6730a02503430ef0
Author: Arthur O'Dwyer <arthur.j.odwyer at gmail.com>
Date: 2021-01-25 (Mon, 25 Jan 2021)
Changed paths:
M libcxx/include/__functional_base
M libcxx/include/functional
M libcxx/include/type_traits
A libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/noncopyable_return_type.pass.cpp
Log Message:
-----------
[libc++] Support immovable return types in std::function.
LWG reflector consensus is that this was a bug in libc++.
(In particular, MSVC also will fix it in their STL, soon.)
Bug originally discovered by Logan Smith.
Also fix `std::function<const void()>`, which should work
the same way as `std::function<void()>` in terms of allowing
"conversions" from non-void types.
Differential Revision: https://reviews.llvm.org/D94452
More information about the All-commits
mailing list