Lines Matching defs:ArgIdx
1202 unsigned ArgIdx = 0, ParamIdx = 0;
1211 if (ArgIdx >= NumArgs)
1214 if (isa<PackExpansionType>(Args[ArgIdx])) {
1224 Args[ArgIdx].getUnqualifiedType(), Info, Deduced, TDF,
1230 ++ArgIdx;
1247 for (; ArgIdx < NumArgs && PackScope.hasNextElement(); ++ArgIdx) {
1251 Args[ArgIdx].getUnqualifiedType(), Info, Deduced, TDF,
1278 for (unsigned I = 0; I != *NumExpansions && ArgIdx < NumArgs;
1279 ++I, ++ArgIdx)
1297 if (PartialOrdering && ArgIdx + 1 == NumArgs &&
1298 isa<PackExpansionType>(Args[ArgIdx]))
1302 if (ArgIdx < NumArgs)
2530 /// parameters so that \c Args[ArgIdx] will be the available template argument.
2533 /// \c Args[ArgIdx]), false otherwise.
2535 unsigned &ArgIdx) {
2536 if (ArgIdx == Args.size())
2539 const TemplateArgument &Arg = Args[ArgIdx];
2543 assert(ArgIdx == Args.size() - 1 && "Pack not at the end of argument list?");
2545 ArgIdx = 0;
2546 return ArgIdx < Args.size();
2589 unsigned ArgIdx = 0, ParamIdx = 0;
2596 if (!hasTemplateArgumentForDeduction(As, ArgIdx))
2604 if (As[ArgIdx].isPackExpansion())
2608 TemplateArgument Pi = P, Ai = As[ArgIdx];
2617 ++ArgIdx;
2636 for (; hasTemplateArgumentForDeduction(As, ArgIdx) &&
2638 ++ArgIdx) {
2639 TemplateArgument Pi = Pattern, Ai = As[ArgIdx];
3162 unsigned ArgIdx = InstArgs.size(), ParamIdx = ArgIdx;
3169 Info.FirstArg = (*PartialTemplArgInfo)[ArgIdx].getArgument();
3630 Info.CallArgIndex = OriginalArg.ArgIdx;
3953 auto ParamIdx = OriginalArg.ArgIdx;
4251 bool DecomposedParam, unsigned ArgIdx, unsigned TDF,
4260 SmallVectorImpl<Sema::OriginalCallArg> &OriginalCallArgs, unsigned ArgIdx,
4295 OriginalCallArgs, true, ArgIdx, TDF);
4333 bool DecomposedParam, unsigned ArgIdx, unsigned TDF,
4348 Deduced, OriginalCallArgs, ArgIdx, TDF);
4357 Sema::OriginalCallArg(OrigParamType, DecomposedParam, ArgIdx, ArgType));
4426 // Deduce an argument of type ParamType from an expression with index ArgIdx.
4427 auto DeduceCallArgument = [&](QualType ParamType, unsigned ArgIdx,
4442 /*Decomposed*/ false, ArgIdx, /*TDF*/ 0);
4448 Args[ArgIdx]->getType(), Args[ArgIdx]->Classify(getASTContext()),
4449 Args[ArgIdx], Info, Deduced, OriginalCallArgs, /*Decomposed*/ false,
4450 ArgIdx, /*TDF*/ 0);
4456 for (unsigned ParamIdx = 0, NumParamTypes = ParamTypes.size(), ArgIdx = 0;
4464 if (ArgIdx >= Args.size() && !(HasExplicitObject && ParamIdx == 0))
4477 if (auto Result = DeduceCallArgument(ParamType, ArgIdx++,
4509 for (; ArgIdx < Args.size() && PackScope.hasNextElement();
4510 PackScope.nextPackElement(), ++ArgIdx) {
4512 if (auto Result = DeduceCallArgument(ParamPattern, ArgIdx,
4524 for (unsigned I = 0; I != *NumExpansions && ArgIdx < Args.size();
4525 ++I, ++ArgIdx) {
4550 unsigned PackArgEnd = ArgIdx + *ArgPosAfterSubstitution;
4551 for (; ArgIdx < PackArgEnd && ArgIdx < Args.size(); ArgIdx++) {
4554 DeduceCallArgument(ParamPattern, ArgIdx,
5154 /*ArgIdx=*/0, /*TDF=*/0);
5181 OriginalCallArgs, /*Decomposed=*/false, /*ArgIdx=*/0, /*TDF=*/0,
5464 unsigned ArgIdx = 0, NumArgs = Deduced.size();
5465 for (; ArgIdx != NumArgs; ++ArgIdx)
5466 if (Deduced[ArgIdx].isNull())
5473 if (ArgIdx == NumArgs) {
5521 for (; ArgIdx != NumArgs; ++ArgIdx)
5524 if (Deduced[ArgIdx].isNull() && UsedParameters[ArgIdx])