Lines Matching refs:Best
1052 // C++ [over.best.ics]p4:
1560 // C++ [over.best.ics]p6:
2862 OverloadCandidateSet::iterator Best;
2863 switch (CandidateSet.BestViableFunction(S, From->getLocStart(), Best, true)) {
2866 CXXConstructorDecl *Constructor = cast<CXXConstructorDecl>(Best->Function);
2874 User.FoundConversionFunction = Best->FoundDecl;
3044 OverloadCandidateSet::iterator Best;
3045 switch (CandidateSet.BestViableFunction(S, From->getLocStart(), Best, true)) {
3049 = dyn_cast<CXXConstructorDecl>(Best->Function)) {
3063 if (Best->Conversions[0].isEllipsis())
3066 User.Before = Best->Conversions[0].Standard;
3072 User.FoundConversionFunction = Best->FoundDecl;
3079 = dyn_cast<CXXConversionDecl>(Best->Function)) {
3088 User.Before = Best->Conversions[0].Standard;
3091 User.FoundConversionFunction = Best->FoundDecl;
3100 // selecting the best user-defined conversion for a
3103 User.After = Best->FinalConversion;
3194 // C++0x [over.best.ics]p10:
3978 OverloadCandidateSet::iterator Best;
3979 switch (CandidateSet.BestViableFunction(S, DeclLoc, Best, true)) {
3991 if (!Best->FinalConversion.DirectBinding)
3994 if (Best->Function)
3995 S.MarkFunctionReferenced(DeclLoc, Best->Function);
3997 ICS.UserDefined.Before = Best->Conversions[0].Standard;
3998 ICS.UserDefined.After = Best->FinalConversion;
4000 ICS.UserDefined.ConversionFunction = Best->Function;
4001 ICS.UserDefined.FoundConversionFunction = Best->FoundDecl;
4104 // [over.best.ics]p2).
4113 // conversion functions (13.3.1.6) and choosing the best
4365 // resolution chooses a single best constructor [...] the implicit
7604 // C++ [over.match.best]p1:
7614 // C++ [over.match.best]p1:
7705 /// \brief Computes the best viable function (C++ 13.3.3)
7713 /// \param Best f overload resolution was successful or found a deleted
7714 /// function, Best points to the candidate function found.
7719 iterator &Best,
7721 // Find the best viable function.
7722 Best = end();
7725 if (Best == end() || isBetterOverloadCandidate(S, *Cand, *Best, Loc,
7727 Best = Cand;
7731 if (Best == end())
7738 Cand != Best &&
7739 !isBetterOverloadCandidate(S, *Best, *Cand, Loc,
7741 Best = end();
7746 // Best is the best viable function.
7747 if (Best->Function &&
7748 (Best->Function->isDeleted() ||
7749 S.isFunctionConsideredUnavailable(Best->Function)))
8931 // best viable function in an overload set) that identifies the
8932 // best function template (if it exists).
9354 OverloadCandidateSet::iterator Best;
9355 if (Candidates.BestViableFunction(SemaRef, FnLoc, Best) != OR_Success) {
9386 SemaRef.Diag(Best->Function->getLocation(),
9390 SemaRef.Diag(Best->Function->getLocation(),
9397 SemaRef.Diag(Best->Function->getLocation(),
9621 OverloadCandidateSet::iterator Best;
9622 switch (CandidateSet.BestViableFunction(*this, Fn->getLocStart(), Best)) {
9624 FunctionDecl *FDecl = Best->Function;
9626 CheckUnresolvedLookupAccess(ULE, Best->FoundDecl);
9628 Fn = FixOverloadedFunctionReference(Fn, Best->FoundDecl, FDecl);
9662 << Best->Function->isDeleted()
9664 << getDeletedOrUnavailableSuffix(Best->Function)
9671 FunctionDecl *FDecl = Best->Function;
9672 Fn = FixOverloadedFunctionReference(Fn, Best->FoundDecl, FDecl);
9774 OverloadCandidateSet::iterator Best;
9775 switch (CandidateSet.BestViableFunction(*this, OpLoc, Best)) {
9778 FunctionDecl *FnDecl = Best->Function;
9788 CheckMemberOperatorAccess(OpLoc, Args[0], 0, Best->FoundDecl);
9792 Best->FoundDecl, Method);
9809 DiagnoseUseOfDecl(Best->FoundDecl, OpLoc);
9837 PerformImplicitConversion(Input, Best->BuiltinTypes.ParamTypes[0],
9838 Best->Conversions[0], AA_Passing);
9871 << Best->Function->isDeleted()
9873 << getDeletedOrUnavailableSuffix(Best->Function)
9998 OverloadCandidateSet::iterator Best;
9999 switch (CandidateSet.BestViableFunction(*this, OpLoc, Best)) {
10002 FunctionDecl *FnDecl = Best->Function;
10012 // Best->Access is only meaningful for class members.
10013 CheckMemberOperatorAccess(OpLoc, Args[0], Args[1], Best->FoundDecl);
10025 Best->FoundDecl, Method);
10050 DiagnoseUseOfDecl(Best->FoundDecl, OpLoc);
10077 PerformImplicitConversion(Args[0], Best->BuiltinTypes.ParamTypes[0],
10078 Best->Conversions[0], AA_Passing);
10084 PerformImplicitConversion(Args[1], Best->BuiltinTypes.ParamTypes[1],
10085 Best->Conversions[1], AA_Passing);
10140 if (isImplicitlyDeleted(Best->Function)) {
10141 CXXMethodDecl *Method = cast<CXXMethodDecl>(Best->Function);
10145 << getDeletedOrUnavailableSuffix(Best->Function);
10155 << Best->Function->isDeleted()
10157 << getDeletedOrUnavailableSuffix(Best->Function)
10220 OverloadCandidateSet::iterator Best;
10221 switch (CandidateSet.BestViableFunction(*this, LLoc, Best)) {
10224 FunctionDecl *FnDecl = Best->Function;
10232 CheckMemberOperatorAccess(LLoc, Args[0], Args[1], Best->FoundDecl);
10233 DiagnoseUseOfDecl(Best->FoundDecl, LLoc);
10239 Best->FoundDecl, Method);
10286 PerformImplicitConversion(Args[0], Best->BuiltinTypes.ParamTypes[0],
10287 Best->Conversions[0], AA_Passing);
10293 PerformImplicitConversion(Args[1], Best->BuiltinTypes.ParamTypes[1],
10294 Best->Conversions[1], AA_Passing);
10328 << Best->Function->isDeleted() << "[]"
10329 << getDeletedOrUnavailableSuffix(Best->Function)
10475 OverloadCandidateSet::iterator Best;
10477 Best)) {
10479 Method = cast<CXXMethodDecl>(Best->Function);
10481 FoundDecl = Best->FoundDecl;
10482 CheckUnresolvedMemberAccess(UnresExpr, Best->FoundDecl);
10483 DiagnoseUseOfDecl(Best->FoundDecl, UnresExpr->getNameLoc());
10505 << Best->Function->isDeleted()
10507 << getDeletedOrUnavailableSuffix(Best->Function)
10679 OverloadCandidateSet::iterator Best;
10681 Best)) {
10711 << Best->Function->isDeleted()
10713 << getDeletedOrUnavailableSuffix(Best->Function)
10720 if (Best == CandidateSet.end())
10725 if (Best->Function == 0) {
10730 Best->Conversions[0].UserDefined.ConversionFunction);
10732 CheckMemberOperatorAccess(LParenLoc, Object.get(), 0, Best->FoundDecl);
10733 DiagnoseUseOfDecl(Best->FoundDecl, LParenLoc);
10741 ExprResult Call = BuildCXXMemberCallExpr(Object.get(), Best->FoundDecl,
10754 MarkFunctionReferenced(LParenLoc, Best->Function);
10755 CheckMemberOperatorAccess(LParenLoc, Object.get(), 0, Best->FoundDecl);
10756 DiagnoseUseOfDecl(Best->FoundDecl, LParenLoc);
10761 CXXMethodDecl *Method = cast<CXXMethodDecl>(Best->Function);
10820 Best->FoundDecl, Method);
10894 // the operator is selected as the best match function by the
10919 OverloadCandidateSet::iterator Best;
10920 switch (CandidateSet.BestViableFunction(*this, OpLoc, Best)) {
10943 << Best->Function->isDeleted()
10945 << getDeletedOrUnavailableSuffix(Best->Function)
10951 MarkFunctionReferenced(OpLoc, Best->Function);
10952 CheckMemberOperatorAccess(OpLoc, Base, 0, Best->FoundDecl);
10953 DiagnoseUseOfDecl(Best->FoundDecl, OpLoc);
10956 CXXMethodDecl *Method = cast<CXXMethodDecl>(Best->Function);
10959 Best->FoundDecl, Method);
11001 OverloadCandidateSet::iterator Best;
11002 switch (CandidateSet.BestViableFunction(*this, UDSuffixLoc, Best)) {
11019 FunctionDecl *FD = Best->Function;
11021 DiagnoseUseOfDecl(Best->FoundDecl, UDSuffixLoc);