Lines Matching defs:CandidateSet
3654 OverloadCandidateSet &CandidateSet,
3656 CandidateSet.clear(OverloadCandidateSet::CSK_InitByUserDefinedConversion);
3669 CandidateSet, SuppressUserConversions,
3674 CandidateSet, SuppressUserConversions,
3679 bool HadMultipleCandidates = (CandidateSet.size() > 1);
3683 CandidateSet.BestViableFunction(S, From->getBeginLoc(), Best)) {
3726 OverloadCandidateSet &CandidateSet,
3731 CandidateSet.clear(OverloadCandidateSet::CSK_InitByUserDefinedConversion);
3763 S, From, ToType, ToRecordDecl, User, CandidateSet,
3768 CandidateSet.clear(
3806 CandidateSet, SuppressUserConversions,
3813 llvm::ArrayRef(Args, NumArgs), CandidateSet,
3849 CandidateSet, AllowObjCConversionOnExplicit,
3853 CandidateSet, AllowObjCConversionOnExplicit,
3859 bool HadMultipleCandidates = (CandidateSet.size() > 1);
3863 CandidateSet.BestViableFunction(S, From->getBeginLoc(), Best)) {
3935 OverloadCandidateSet CandidateSet(From->getExprLoc(),
3939 CandidateSet, AllowedExplicit::None, false);
3942 (OvResult == OR_No_Viable_Function && !CandidateSet.empty())))
3945 auto Cands = CandidateSet.CompleteCandidates(
3952 else { // OR_No_Viable_Function && !CandidateSet.empty()
3960 CandidateSet.NoteCandidates(
4919 OverloadCandidateSet CandidateSet(
4970 ConvTemplate, I.getPair(), ActingDC, Init, DeclType, CandidateSet,
4974 Conv, I.getPair(), ActingDC, Init, DeclType, CandidateSet,
4978 bool HadMultipleCandidates = (CandidateSet.size() > 1);
4981 switch (CandidateSet.BestViableFunction(S, DeclLoc, Best)) {
5010 for (OverloadCandidateSet::iterator Cand = CandidateSet.begin();
5011 Cand != CandidateSet.end(); ++Cand)
6500 OverloadCandidateSet &CandidateSet) {
6517 ConvTemplate, FoundDecl, ActingContext, From, ToType, CandidateSet,
6521 ToType, CandidateSet,
6673 OverloadCandidateSet CandidateSet(Loc, OverloadCandidateSet::CSK_Normal);
6675 CandidateSet);
6679 switch (CandidateSet.BestViableFunction(*this, Loc, Best)) {
6797 OverloadCandidateSet &CandidateSet, bool SuppressUserConversions,
6818 CandidateSet, SuppressUserConversions,
6826 if (!CandidateSet.isNewCandidate(Function, PO))
6848 if (CandidateSet.getKind() == OverloadCandidateSet::CSK_Operator &&
6854 CandidateSet.addCandidate(Args.size(), EarlyConversions);
6859 CandidateSet.getRewriteInfo().getRewriteKind(Function, PO);
6936 CandidateSet.getDestAS())) {
7028 CheckEnableIf(Function, CandidateSet.getLocation(), Args)) {
7293 OverloadCandidateSet &CandidateSet,
7327 FunctionArgs, CandidateSet, SuppressUserConversions,
7332 ObjectClassification, FunctionArgs, CandidateSet,
7349 CandidateSet, SuppressUserConversions,
7352 AddOverloadCandidate(FD, F.getPair(), FunctionArgs, CandidateSet,
7362 OverloadCandidateSet &CandidateSet,
7376 ObjectClassification, Args, CandidateSet,
7380 ObjectType, ObjectClassification, Args, CandidateSet,
7390 OverloadCandidateSet &CandidateSet,
7401 if (!CandidateSet.isNewCandidate(Method, PO))
7417 CandidateSet.addCandidate(Args.size() + 1, EarlyConversions);
7421 CandidateSet.getRewriteInfo().getRewriteKind(Method, PO);
7423 CandidateSet.getKind() == OverloadCandidateSet::CSK_AddressOfOverloadSet;
7428 CandidateSet.getKind() ==
7431 CandidateSet.getKind() ==
7488 *this, CandidateSet.getLocation(), ObjectType, ObjectClassification,
7558 CheckEnableIf(Method, CandidateSet.getLocation(), Args, true)) {
7576 OverloadCandidateSet &CandidateSet, bool SuppressUserConversions,
7578 if (!CandidateSet.isNewCandidate(MethodTmpl, PO))
7590 TemplateDeductionInfo Info(CandidateSet.getLocation());
7599 MethodTmpl, ParamTypes, Args, CandidateSet, Conversions,
7605 CandidateSet.addCandidate(Conversions.size(), Conversions);
7610 CandidateSet.getRewriteInfo().getRewriteKind(Candidate.Function, PO);
7633 CandidateSet, SuppressUserConversions, PartialOverloading,
7646 OverloadCandidateSet &CandidateSet, bool SuppressUserConversions,
7649 if (!CandidateSet.isNewCandidate(FunctionTemplate, PO))
7656 OverloadCandidate &Candidate = CandidateSet.addCandidate();
7673 TemplateDeductionInfo Info(CandidateSet.getLocation(),
7684 FunctionTemplate, ParamTypes, Args, CandidateSet, Conversions,
7689 CandidateSet.addCandidate(Conversions.size(), Conversions);
7694 CandidateSet.getRewriteInfo().getRewriteKind(Candidate.Function, PO);
7717 Specialization, FoundDecl, Args, CandidateSet, SuppressUserConversions,
7725 ArrayRef<Expr *> Args, OverloadCandidateSet &CandidateSet,
7740 CandidateSet.allocateConversionSequences(ThisConversions + Args.size());
7755 *this, CandidateSet.getLocation(), ObjectType, ObjectClassification,
7841 OverloadCandidateSet &CandidateSet, bool AllowObjCConversionOnExplicit,
7846 if (!CandidateSet.isNewCandidate(Conversion))
7879 OverloadCandidate &Candidate = CandidateSet.addCandidate(1);
7915 *this, CandidateSet.getLocation(), From->getType(),
7943 IsDerivedFrom(CandidateSet.getLocation(), FromCanon, ToCanon)) {
8027 CheckEnableIf(Conversion, CandidateSet.getLocation(), std::nullopt)) {
8043 OverloadCandidateSet &CandidateSet, bool AllowObjCConversionOnExplicit,
8048 if (!CandidateSet.isNewCandidate(FunctionTemplate))
8055 OverloadCandidate &Candidate = CandidateSet.addCandidate();
8066 TemplateDeductionInfo Info(CandidateSet.getLocation());
8072 OverloadCandidate &Candidate = CandidateSet.addCandidate();
8087 CandidateSet, AllowObjCConversionOnExplicit,
8097 OverloadCandidateSet& CandidateSet) {
8098 if (!CandidateSet.isNewCandidate(Conversion))
8105 OverloadCandidate &Candidate = CandidateSet.addCandidate(Args.size() + 1);
8123 *this, CandidateSet.getLocation(), Object->getType(),
8208 CheckEnableIf(Conversion, CandidateSet.getLocation(), std::nullopt)) {
8218 OverloadCandidateSet &CandidateSet,
8229 if (!CandidateSet.getRewriteInfo().isAcceptableCandidate(FD))
8237 FunctionArgs, CandidateSet);
8238 if (CandidateSet.getRewriteInfo().shouldAddReversed(*this, Args, FD))
8241 {FunctionArgs[1], FunctionArgs[0]}, CandidateSet, false, false,
8246 AddOverloadCandidate(FD, F.getPair(), FunctionArgs, CandidateSet);
8247 if (CandidateSet.getRewriteInfo().shouldAddReversed(*this, Args, FD))
8249 FD, F.getPair(), {FunctionArgs[1], FunctionArgs[0]}, CandidateSet,
8259 OverloadCandidateSet &CandidateSet,
8294 !CandidateSet.getRewriteInfo().shouldAddReversed(
8299 CandidateSet, /*SuppressUserConversion=*/false, PO);
8305 OverloadCandidateSet& CandidateSet,
8313 OverloadCandidate &Candidate = CandidateSet.addCandidate(Args.size());
8660 OverloadCandidateSet &CandidateSet) {
8667 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
8676 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
8788 OverloadCandidateSet &CandidateSet;
8885 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
8893 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
8903 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
8911 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
8921 S.AddBuiltinCandidate(LandR, Args, CandidateSet);
8930 OverloadCandidateSet &CandidateSet)
8936 CandidateSet(CandidateSet) {
9024 S.AddBuiltinCandidate(&ParamTy, Args, CandidateSet);
9041 S.AddBuiltinCandidate(&ArithTy, Args, CandidateSet);
9046 S.AddBuiltinCandidate(&VecTy, Args, CandidateSet);
9056 S.AddBuiltinCandidate(&ParamTy, Args, CandidateSet);
9071 S.AddBuiltinCandidate(&IntTy, Args, CandidateSet);
9076 S.AddBuiltinCandidate(&VecTy, Args, CandidateSet);
9096 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9103 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9139 for (OverloadCandidateSet::iterator C = CandidateSet.begin(),
9140 CEnd = CandidateSet.end();
9184 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9196 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9236 S.AddBuiltinCandidate(AsymmetricParamTypes, Args, CandidateSet);
9244 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9289 S.AddBuiltinCandidate(LandR, Args, CandidateSet);
9298 S.AddBuiltinCandidate(LandR, Args, CandidateSet);
9382 S.AddBuiltinCandidate(LandR, Args, CandidateSet);
9403 AddBuiltinAssignmentOperatorCandidates(S, EnumTy, Args, CandidateSet);
9410 AddBuiltinAssignmentOperatorCandidates(S, MemPtrTy, Args, CandidateSet);
9447 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9456 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9465 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9473 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9491 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9500 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9509 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9517 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9553 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9566 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9573 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9607 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9622 S.AddBuiltinCandidate(&ParamTy, Args, CandidateSet,
9628 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet,
9651 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9661 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9693 if (C1 != C2 && !S.IsDerivedFrom(CandidateSet.getLocation(), C1, C2))
9705 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9730 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9738 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9750 S.AddBuiltinCandidate(ParamTypes, Args, CandidateSet);
9762 OverloadCandidateSet &CandidateSet) {
9807 CandidateTypes, CandidateSet);
9961 OverloadCandidateSet& CandidateSet,
9976 for (OverloadCandidateSet::iterator Cand = CandidateSet.begin(),
9977 CandEnd = CandidateSet.end();
9995 FD, FoundDecl, Args, CandidateSet, /*SuppressUserConversions=*/false,
9998 if (CandidateSet.getRewriteInfo().shouldAddReversed(*this, Args, FD)) {
10000 FD, FoundDecl, {Args[1], Args[0]}, CandidateSet,
10009 FTD, FoundDecl, ExplicitTemplateArgs, Args, CandidateSet,
10012 if (CandidateSet.getRewriteInfo().shouldAddReversed(
10016 CandidateSet, /*SuppressUserConversions=*/false, PartialOverloading,
13455 OverloadCandidateSet &CandidateSet,
13471 S.AddOverloadCandidate(Func, FoundDecl, Args, CandidateSet,
13480 ExplicitTemplateArgs, Args, CandidateSet,
13491 OverloadCandidateSet &CandidateSet,
13534 CandidateSet, PartialOverloading,
13540 CandidateSet, PartialOverloading);
13545 ArrayRef<Expr *> Args, OverloadCandidateSet &CandidateSet) {
13548 CandidateSet, false, /*KnownValid*/ false);
13810 OverloadCandidateSet *CandidateSet,
13839 AddOverloadedCallCandidates(ULE, Args, *CandidateSet);
13846 if (CandidateSet->empty() ||
13847 CandidateSet->BestViableFunction(*this, Fn->getBeginLoc(), Best) ==
13862 if (CandidateSet->empty())
13921 OverloadCandidateSet *CandidateSet,
13941 if (*Best != CandidateSet->end() &&
13942 CandidateSet->getKind() ==
13947 CandidateSet->NoteCandidates(
13960 CandidateSet->empty(),
13980 CandidateSet->NoteCandidates(
13990 CandidateSet->NoteCandidates(
14001 *CandidateSet, FDecl, Args);
14019 chooseRecoveryType(*CandidateSet, Best));
14041 OverloadCandidateSet CandidateSet(
14047 if (buildOverloadedCallSet(S, Fn, ULE, Args, LParenLoc, &CandidateSet,
14054 markUnaddressableCandidatesUnviable(*this, CandidateSet);
14058 CandidateSet.BestViableFunction(*this, Fn->getBeginLoc(), Best);
14077 ExecConfig, &CandidateSet, &Best,
14220 OverloadCandidateSet CandidateSet(OpLoc, OverloadCandidateSet::CSK_Operator);
14223 AddNonMemberOperatorCandidates(Fns, ArgsArray, CandidateSet);
14226 AddMemberOperatorCandidates(Op, OpLoc, ArgsArray, CandidateSet);
14232 CandidateSet);
14236 AddBuiltinOperatorCandidates(Op, OpLoc, ArgsArray, CandidateSet);
14238 bool HadMultipleCandidates = (CandidateSet.size() > 1);
14242 switch (CandidateSet.BestViableFunction(*this, OpLoc, Best)) {
14329 CandidateSet.NoteCandidates(
14345 CandidateSet.NoteCandidates(
14363 void Sema::LookupOverloadedBinOp(OverloadCandidateSet &CandidateSet,
14367 SourceLocation OpLoc = CandidateSet.getLocation();
14370 CandidateSet.getRewriteInfo().AllowRewrittenCandidates
14376 AddNonMemberOperatorCandidates(Fns, Args, CandidateSet);
14379 AddMemberOperatorCandidates(Op, OpLoc, Args, CandidateSet);
14380 if (CandidateSet.getRewriteInfo().allowsReversed(Op))
14381 AddMemberOperatorCandidates(Op, OpLoc, {Args[1], Args[0]}, CandidateSet,
14386 AddMemberOperatorCandidates(ExtraOp, OpLoc, Args, CandidateSet);
14387 if (CandidateSet.getRewriteInfo().allowsReversed(ExtraOp))
14389 CandidateSet,
14400 CandidateSet);
14406 CandidateSet);
14423 AddBuiltinOperatorCandidates(Op, OpLoc, Args, CandidateSet);
14507 OverloadCandidateSet CandidateSet(OpLoc, OverloadCandidateSet::CSK_Operator,
14511 CandidateSet.exclude(DefaultedFn);
14512 LookupOverloadedBinOp(CandidateSet, Op, Fns, Args, PerformADL);
14514 bool HadMultipleCandidates = (CandidateSet.size() > 1);
14518 switch (CandidateSet.BestViableFunction(*this, OpLoc, Best)) {
14556 CandidateSet.getRewriteInfo().isReversible()) {
14562 for (OverloadCandidate &Cand : CandidateSet) {
14806 auto Cands = CandidateSet.CompleteCandidates(*this, OCD_AllCandidates,
14809 CandidateSet.shouldDeferDiags(*this, Args, OpLoc));
14834 CandidateSet.NoteCandidates(*this, Args, Cands, OpcStr, OpLoc);
14839 CandidateSet.NoteCandidates(
14871 CandidateSet.NoteCandidates(
15062 OverloadCandidateSet CandidateSet(LLoc, OverloadCandidateSet::CSK_Operator);
15067 AddMemberOperatorCandidates(OO_Subscript, LLoc, Args, CandidateSet);
15071 AddBuiltinOperatorCandidates(OO_Subscript, LLoc, Args, CandidateSet);
15073 bool HadMultipleCandidates = (CandidateSet.size() > 1);
15077 switch (CandidateSet.BestViableFunction(*this, LLoc, Best)) {
15165 CandidateSet.empty()
15171 CandidateSet.NoteCandidates(PartialDiagnosticAt(LLoc, PD), *this,
15178 CandidateSet.NoteCandidates(
15185 CandidateSet.NoteCandidates(
15196 CandidateSet.NoteCandidates(
15313 OverloadCandidateSet CandidateSet(UnresExpr->getMemberLoc(),
15348 CandidateSet,
15357 ObjectClassification, Args, CandidateSet,
15363 Args, CandidateSet,
15368 HadMultipleCandidates = (CandidateSet.size() > 1);
15376 switch (CandidateSet.BestViableFunction(*this, UnresExpr->getBeginLoc(),
15397 CandidateSet.NoteCandidates(
15405 CandidateSet.NoteCandidates(
15414 CandidateSet, Best->Function, Args, /*IsMember=*/true);
15419 return BuildRecoveryExpr(chooseRecoveryType(CandidateSet, &Best));
15559 OverloadCandidateSet CandidateSet(LParenLoc,
15575 Object.get()->Classify(Context), Args, CandidateSet,
15588 if (CandidateSet.size() == 1 && Record->getAsCXXRecordDecl()->isLambda()) {
15589 const OverloadCandidate &Candidate = *CandidateSet.begin();
15637 Object.get(), Args, CandidateSet);
15642 bool HadMultipleCandidates = (CandidateSet.size() > 1);
15646 switch (CandidateSet.BestViableFunction(*this, Object.get()->getBeginLoc(),
15655 CandidateSet.empty()
15661 CandidateSet.NoteCandidates(
15668 CandidateSet.NoteCandidates(
15681 CandidateSet.NoteCandidates(
15692 if (Best == CandidateSet.end())
15827 OverloadCandidateSet CandidateSet(Loc, OverloadCandidateSet::CSK_Operator);
15840 std::nullopt, CandidateSet,
15844 bool HadMultipleCandidates = (CandidateSet.size() > 1);
15848 switch (CandidateSet.BestViableFunction(*this, OpLoc, Best)) {
15854 auto Cands = CandidateSet.CompleteCandidates(*this, OCD_AllCandidates, Base);
15855 if (CandidateSet.empty()) {
15872 CandidateSet.NoteCandidates(*this, Base, Cands);
15877 CandidateSet.NoteCandidates(
15886 CandidateSet.NoteCandidates(
15945 OverloadCandidateSet CandidateSet(UDSuffixLoc,
15947 AddNonMemberOperatorCandidates(R.asUnresolvedSet(), Args, CandidateSet,
15950 bool HadMultipleCandidates = (CandidateSet.size() > 1);
15955 switch (CandidateSet.BestViableFunction(*this, UDSuffixLoc, Best)) {
15961 CandidateSet.NoteCandidates(
15969 CandidateSet.NoteCandidates(
16018 OverloadCandidateSet *CandidateSet,
16022 CandidateSet->clear(OverloadCandidateSet::CSK_Normal);
16050 CandidateSet, CallExpr);
16051 if (CandidateSet->empty() || CandidateSetError) {
16057 CandidateSet->BestViableFunction(*this, Fn->getBeginLoc(), Best);
16064 Loc, nullptr, CandidateSet, &Best,
16299 OverloadCandidateSet &CandidateSet,
16303 CandidateSet.NoteCandidates(