llvm-project/libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func
Eric Fiselier 94d555116c Fix PR34298 - Allow std::function with an incomplete return type.
This patch fixes llvm.org/PR34298. Previously libc++ incorrectly evaluated
the __invokable trait via the converting constructor `function(Tp)` [with Tp = std::function]
whenever the copy constructor or copy assignment operator
was required. This patch further constrains that constructor to short
circut before evaluating the troublesome SFINAE when `Tp` matches
std::function.

The original patch is from Alex Lorenz.

llvm-svn: 312892
2017-09-10 23:41:20 +00:00
..
func.wrap.func.alg Add tests to check that swap(std::function, std::function) is noexcept. This is LWG#2062, but we already do this. No changes to the library, just adding tests. 2016-10-10 16:47:48 +00:00
func.wrap.func.cap
func.wrap.func.con Fix PR34298 - Allow std::function with an incomplete return type. 2017-09-10 23:41:20 +00:00
func.wrap.func.inv Cleanup tests that fail in C++1z and with Clang 3.8 2015-07-17 22:27:43 +00:00
func.wrap.func.mod Fix PR31489 - std::function self-swap segfaults 2016-12-29 20:03:55 +00:00
func.wrap.func.nullptr
func.wrap.func.targ Implement LWG 2591 - Patch from K-Ballo 2017-05-10 20:37:43 +00:00
derive_from.fail.cpp Implement http://wg21.link/p0302r1: Removing Allocator Support in std::function. These functions never worked, and as far as I know, no one ever called them. 2016-10-13 21:06:03 +00:00
derive_from.pass.cpp [libcxx] [test] Update for C++17 feature removals. 2017-08-24 21:24:08 +00:00
function_types.h Add missing license headers 2016-01-19 21:52:04 +00:00
types.pass.cpp Remove trailing whitespace in test suite. Approved by Marshall Clow. 2016-06-01 21:35:39 +00:00