diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2019-10-19 00:34:54 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2019-10-19 00:34:54 +0000 |
commit | 766f15814a012e5e6522c4e0f93c094ca2408367 (patch) | |
tree | 7ed706457af6a700a1193ecd7e71c1dbfb3aa086 /clang/test/CodeGenCXX/implicit-function-conversion.cpp | |
parent | 0904f924012db8002eec3a0533e310c1e714cca4 (diff) | |
download | bcm5719-llvm-766f15814a012e5e6522c4e0f93c094ca2408367.tar.gz bcm5719-llvm-766f15814a012e5e6522c4e0f93c094ca2408367.zip |
Sema: Create a no-op implicit cast for lvalue function conversions.
This fixes an assertion failure in the case where an implicit conversion for a
function call involves an lvalue function conversion, and makes the AST for
initializations involving implicit lvalue function conversions more accurate.
Differential Revision: https://reviews.llvm.org/D66437
llvm-svn: 375313
Diffstat (limited to 'clang/test/CodeGenCXX/implicit-function-conversion.cpp')
-rw-r--r-- | clang/test/CodeGenCXX/implicit-function-conversion.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/implicit-function-conversion.cpp b/clang/test/CodeGenCXX/implicit-function-conversion.cpp new file mode 100644 index 00000000000..2d14c6ae519 --- /dev/null +++ b/clang/test/CodeGenCXX/implicit-function-conversion.cpp @@ -0,0 +1,7 @@ +// RUN: %clang_cc1 -emit-llvm %s -o - -triple=x86_64-unknown-linux -std=c++17 | FileCheck %s + +double a(double) noexcept; +int b(double (&)(double)); + +// CHECK: call i32 @_Z1bRFddE(double (double)* @_Z1ad) +int c = b(a); |