Home | History | Annotate | Download | only in Sema

Lines Matching refs:Viable

911     if (!i->Viable && i->FailureKind == ovl_fail_bad_deduction)
3760 // the best viable function. Otherwise, this conversion is considered worse
3768 // In C++03, we pick #2 as the best viable function.
3769 // In C++11, we pick #1 as the best viable function, because ellipsis
3772 // convert arguments, #2 would be the best viable function in C++11.
3773 // If the best viable function has this conversion, a warning will be issued
5112 // constructors are viable but none is better than the others, the
6085 ViableConversions; // These are *potentially* viable in C++1y.
6097 // Collect explicit or viable (potentially in C++1y) conversions.
6112 "viable in C++1y");
6161 // potentially viable conversions.
6328 Candidate.Viable = true;
6340 Candidate.Viable = false;
6347 Candidate.Viable = false;
6361 Candidate.Viable = false;
6382 Candidate.Viable = false;
6393 Candidate.Viable = false;
6401 // parameters is viable only if it has an ellipsis in its parameter
6405 Candidate.Viable = false;
6411 // is viable only if the (m+1)st parameter has a default argument
6418 Candidate.Viable = false;
6431 Candidate.Viable = false;
6440 Candidate.Viable = false;
6455 // (C++ 13.3.2p3): for F to be a viable function, there shall
6466 Candidate.Viable = false;
6480 Candidate.Viable = false;
6891 // parameters is viable only if it has an ellipsis in its parameter
6895 Candidate.Viable = false;
6901 // is viable only if the (m+1)st parameter has a default argument
6908 Candidate.Viable = false;
6913 Candidate.Viable = true;
6926 Candidate.Viable = false;
6936 Candidate.Viable = false;
6945 Candidate.Viable = false;
6960 // (C++ 13.3.2p3): for F to be a viable function, there shall
6972 Candidate.Viable = false;
6986 Candidate.Viable = false;
6994 Candidate.Viable = false;
7036 Candidate.Viable = false;
7090 Candidate.Viable = false;
7118 Candidate.Viable = false;
7303 Candidate.Viable = true;
7310 Candidate.Viable = false;
7333 Candidate.Viable = false;
7342 Candidate.Viable = false;
7356 Candidate.Viable = false;
7378 Candidate.Viable = false;
7410 Candidate.Viable = false;
7422 Candidate.Viable = false;
7429 Candidate.Viable = false;
7440 Candidate.Viable = false;
7448 Candidate.Viable = false;
7476 Candidate.Viable = false;
7489 Candidate.Viable = false;
7530 Candidate.Viable = true;
7541 Candidate.Viable = false;
7564 // parameters is viable only if it has an ellipsis in its parameter
7567 Candidate.Viable = false;
7576 Candidate.Viable = false;
7585 // (C++ 13.3.2p3): for F to be a viable function, there shall
7597 Candidate.Viable = false;
7611 Candidate.Viable = false;
7737 Candidate.Viable = true;
7766 Candidate.Viable = false;
7804 /// A flag indicating non-record types are viable candidates
8490 if (!C->Viable || !C->Function || C->Function->getNumParams() != 2)
9539 // Define viable functions to be better candidates than non-viable
9541 if (!Cand2.Viable)
9542 return Cand1.Viable;
9543 else if (!Cand1.Viable)
9546 // [CUDA] A function with 'never' preference is marked not viable, therefore
9552 // a viable candidate here.
9562 // viability of a function. If two functions are both viable, other factors
9656 // A viable function F1 is defined to be a better function than another
9657 // viable function F2 if for all arguments i, ICSi(F1) is not a worse
9940 /// Computes the best viable function (C++ 13.3.3)
9959 // compilation mode only one call variant is viable. We need to
9960 // exclude non-viable overload candidates from consideration based
9972 // Check viable function only.
9973 return Cand->Viable && Cand->Function &&
9979 // Check viable function only to avoid unnecessary data copying/moving.
9980 return Cand->Viable && Cand->Function &&
9988 // Find the best viable function.
9992 if (Cand->Viable)
9998 // If we didn't find any viable functions, abort.
10008 // Make sure that this function is better than every other viable
10013 if (Cand->Viable && !Cand->Best &&
10031 // Best is the best viable function.
11112 // Note deleted candidates, but only if they're viable.
11113 if (Cand->Viable) {
11127 // We don't really have anything else to say about viable candidates.
11368 if (L->Viable) {
11369 if (!R->Viable) return true;
11378 } else if (R->Viable)
11381 assert(L->Viable == R->Viable);
11383 // Criteria by which we can sort non-viable candidates:
11384 if (!L->Viable) {
11489 assert(!Cand->Viable);
11587 if (!Cand->Viable) {
11589 // This a non-viable builtin candidate. We do not, in general,
11598 if (!Cand->Viable)
11625 return (Cand.Viable == false &&
11675 assert(Cand->Viable &&
11676 "Non-viable built-in candidates are not added to Cands.");
11677 // Generally we only see ambiguities including viable builtin
11688 // If this is a viable builtin, print it.
11766 /// OCD == OCD_AllCandidates and Cand->Viable == false.
12122 // best viable function in an overload set) that identifies the
12697 /// Returns true if a viable candidate was found and a diagnostic was issued.
12724 // We either found non-function declarations or a best viable function
12805 /// Returns true if a viable candidate was found and a diagnostic was issued.
12893 // were not viable.
12897 // We had viable candidates and couldn't recover; let the caller diagnose
12928 // an expression with viable lookup results, which should never
13021 // e.g. if types disagree, but all *viable* overloads return int, choose int.
13026 // Next, consider only viable candidates.
13029 if (C.Viable)
13070 // Try to recover by looking for viable functions which the user might
13138 if (I->Viable &&
13140 I->Viable = false;
13359 // No viable function; fall through to handling this as a
13383 // Either we found no viable overloaded operator or we matched a
13440 // incorrect; a builtin candidate could be hidden by a non-viable candidate,
13592 // reversed form was a viable candidate, and if so, if it had a
13597 if (Cand.Viable && Cand.Function && Cand.isReversed() &&
13785 // viable functions, then the operator is assumed to be the
13824 // No viable function; try to create a built-in operation, which will
13825 // produce an error. Then, show the non-viable candidates.