diff options
author | Eric Fiselier <eric@efcs.ca> | 2017-09-10 23:41:20 +0000 |
---|---|---|
committer | Eric Fiselier <eric@efcs.ca> | 2017-09-10 23:41:20 +0000 |
commit | 94d555116cbdc1522656a205f579da31f0bc14d1 (patch) | |
tree | 47281eddf135ce5538f632098cb37eb16e318326 /llvm/lib/Bitcode | |
parent | 85cde7d2f410353ee5c143ad931da571e9be11bf (diff) | |
download | bcm5719-llvm-94d555116cbdc1522656a205f579da31f0bc14d1.tar.gz bcm5719-llvm-94d555116cbdc1522656a205f579da31f0bc14d1.zip |
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
Diffstat (limited to 'llvm/lib/Bitcode')
0 files changed, 0 insertions, 0 deletions