diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2012-03-01 01:30:04 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2012-03-01 01:30:04 +0000 |
commit | 2fb8512888b937546cb15322a401d374fb60787e (patch) | |
tree | 39e7cf6e2fbbeda4f7f743432f77b755dbeab532 /clang/lib/Sema/SemaExprCXX.cpp | |
parent | d256c21666a883b2baafed84732a57f737223cfa (diff) | |
download | bcm5719-llvm-2fb8512888b937546cb15322a401d374fb60787e.tar.gz bcm5719-llvm-2fb8512888b937546cb15322a401d374fb60787e.zip |
Tighten type-checking a bit to make it clearer how BuildCXXMemberCallExpr is used.
llvm-svn: 151783
Diffstat (limited to 'clang/lib/Sema/SemaExprCXX.cpp')
-rw-r--r-- | clang/lib/Sema/SemaExprCXX.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaExprCXX.cpp b/clang/lib/Sema/SemaExprCXX.cpp index 46ecd9382cd..84afc032c0b 100644 --- a/clang/lib/Sema/SemaExprCXX.cpp +++ b/clang/lib/Sema/SemaExprCXX.cpp @@ -2292,7 +2292,8 @@ static ExprResult BuildCXXCastArgument(Sema &S, assert(!From->getType()->isPointerType() && "Arg can't have pointer type!"); // Create an implicit call expr that calls it. - ExprResult Result = S.BuildCXXMemberCallExpr(From, FoundDecl, Method, + CXXConversionDecl *Conv = cast<CXXConversionDecl>(Method); + ExprResult Result = S.BuildCXXMemberCallExpr(From, FoundDecl, Conv, HadMultipleCandidates); if (Result.isInvalid()) return ExprError(); @@ -5086,7 +5087,7 @@ ExprResult Sema::ActOnPseudoDestructorExpr(Scope *S, Expr *Base, } ExprResult Sema::BuildCXXMemberCallExpr(Expr *E, NamedDecl *FoundDecl, - CXXMethodDecl *Method, + CXXConversionDecl *Method, bool HadMultipleCandidates) { ExprResult Exp = PerformObjectArgumentInitialization(E, /*Qualifier=*/0, FoundDecl, Method); |