diff options
| author | Fariborz Jahanian <fjahanian@apple.com> | 2009-08-26 18:55:36 +0000 |
|---|---|---|
| committer | Fariborz Jahanian <fjahanian@apple.com> | 2009-08-26 18:55:36 +0000 |
| commit | 1cec0c4c946d73f52d076587ab6b012cddbb4872 (patch) | |
| tree | 39c68a7a104b83ee8b73187c3d39dbf90b695252 /clang/lib/Sema/SemaExprCXX.cpp | |
| parent | 13789b3af2a1320ffec528c72587a0cabddf9fad (diff) | |
| download | bcm5719-llvm-1cec0c4c946d73f52d076587ab6b012cddbb4872.tar.gz bcm5719-llvm-1cec0c4c946d73f52d076587ab6b012cddbb4872.zip | |
update to CXXFunctionalCastExpr to support ir-gen for
type convesions of class objects [class.conv]. WIP.
llvm-svn: 80127
Diffstat (limited to 'clang/lib/Sema/SemaExprCXX.cpp')
| -rw-r--r-- | clang/lib/Sema/SemaExprCXX.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaExprCXX.cpp b/clang/lib/Sema/SemaExprCXX.cpp index 669705b0d4c..cf52bae86ca 100644 --- a/clang/lib/Sema/SemaExprCXX.cpp +++ b/clang/lib/Sema/SemaExprCXX.cpp @@ -210,12 +210,15 @@ Sema::ActOnCXXTypeConstructExpr(SourceRange TypeRange, TypeTy *TypeRep, // if (NumExprs == 1) { CastExpr::CastKind Kind = CastExpr::CK_Unknown; - if (CheckCastTypes(TypeRange, Ty, Exprs[0], Kind, /*functional-style*/true)) + CXXMethodDecl *ConversionDecl = 0; + if (CheckCastTypes(TypeRange, Ty, Exprs[0], Kind, ConversionDecl, + /*functional-style*/true)) return ExprError(); exprs.release(); return Owned(new (Context) CXXFunctionalCastExpr(Ty.getNonReferenceType(), Ty, TyBeginLoc, Kind, - Exprs[0], RParenLoc)); + Exprs[0], ConversionDecl, + RParenLoc)); } if (const RecordType *RT = Ty->getAs<RecordType>()) { |

