diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2011-02-12 19:07:46 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2011-02-12 19:07:46 +0000 |
commit | e3c8c64e7735c3589e1a34e6000c93183a55920c (patch) | |
tree | 9aba919860f16004c3c529a163b08c934dce0a14 /lib/Sema/SemaExprCXX.cpp | |
parent | 020c374273ab6099acbed747a7f27aebf8f0af1d (diff) |
Implement objective-c++'s block pointer type matching involving
types which are contravariance in argument types and covariance
in return types. // rdar://8979379.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125445 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaExprCXX.cpp')
-rw-r--r-- | lib/Sema/SemaExprCXX.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/Sema/SemaExprCXX.cpp b/lib/Sema/SemaExprCXX.cpp index f886e17d54..e9f595549f 100644 --- a/lib/Sema/SemaExprCXX.cpp +++ b/lib/Sema/SemaExprCXX.cpp @@ -2199,7 +2199,12 @@ Sema::PerformImplicitConversion(Expr *&From, QualType ToType, } } break; - + + case ICK_Block_Pointer_Conversion: { + ImpCastExprToType(From, ToType.getUnqualifiedType(), CK_BitCast, VK_RValue); + break; + } + case ICK_Lvalue_To_Rvalue: case ICK_Array_To_Pointer: case ICK_Function_To_Pointer: |