Lines Matching defs:Deduced

92                         SmallVectorImpl<DeducedTemplateArgument> &Deduced);
101 Deduced,
110 SmallVectorImpl<DeducedTemplateArgument> &Deduced,
292 SmallVectorImpl<DeducedTemplateArgument> &Deduced) {
299 Deduced[NTTP->getIndex()],
303 Info.FirstArg = Deduced[NTTP->getIndex()];
308 Deduced[NTTP->getIndex()] = Result;
321 SmallVectorImpl<DeducedTemplateArgument> &Deduced) {
329 Deduced[NTTP->getIndex()],
334 Info.FirstArg = Deduced[NTTP->getIndex()];
339 Deduced[NTTP->getIndex()] = Result;
352 SmallVectorImpl<DeducedTemplateArgument> &Deduced) {
360 Deduced[NTTP->getIndex()],
364 Info.FirstArg = Deduced[NTTP->getIndex()];
369 Deduced[NTTP->getIndex()] = Result;
379 SmallVectorImpl<DeducedTemplateArgument> &Deduced) {
391 Deduced[TempParam->getIndex()],
395 Info.FirstArg = Deduced[TempParam->getIndex()];
400 Deduced[TempParam->getIndex()] = Result;
427 /// \param Deduced the deduced template arguments
438 SmallVectorImpl<DeducedTemplateArgument> &Deduced) {
449 Info, Deduced))
458 SpecArg->getNumArgs(), Info, Deduced,
486 Info, Deduced))
493 Info, Deduced, /*NumberOfArgumentsMustMatch=*/true);
580 SmallVectorImpl<DeducedTemplateArgument> &Deduced,
582 : S(S), TemplateParams(TemplateParams), Deduced(Deduced), Info(Info) {
598 Pack.Saved = Deduced[Index];
599 Deduced[Index] = TemplateArgument();
640 DeducedTemplateArgument &DeducedArg = Deduced[Pack.Index];
656 Deduced[Pack.Index] = Pack.Saved;
693 Loc = &Deduced[Pack.Index];
725 SmallVectorImpl<DeducedTemplateArgument> &Deduced;
750 /// \param Deduced the deduced template arguments
768 SmallVectorImpl<DeducedTemplateArgument> &Deduced,
805 Info, Deduced, TDF,
828 PackDeductionScope PackScope(S, TemplateParams, Deduced, Info, Pattern);
837 Args[ArgIdx], Info, Deduced,
927 /// \param Deduced the deduced template arguments
943 SmallVectorImpl<DeducedTemplateArgument> &Deduced,
1131 Deduced[Index],
1135 Info.FirstArg = Deduced[Index];
1140 Deduced[Index] = Result;
1229 Info, Deduced, TDF);
1239 Info, Deduced, TDF);
1259 Info, Deduced, SubTDF);
1271 ReferenceArg->getPointeeType(), Info, Deduced, 0);
1284 Info, Deduced, 0);
1298 Info, Deduced, SubTDF);
1317 Info, Deduced, SubTDF);
1335 Info, Deduced, SubTDF))
1354 Info, Deduced);
1361 Info, Deduced);
1391 FunctionProtoArg->getReturnType(), Info, Deduced, 0))
1398 FunctionProtoArg->getNumParams(), Info, Deduced, SubTDF);
1425 Deduced);
1427 SmallVector<DeducedTemplateArgument, 8> DeducedOrig(Deduced.begin(),
1428 Deduced.end());
1431 S, TemplateParams, SpecParam, Arg, Info, Deduced);
1454 Deduced = DeducedOrig;
1478 QualType(NextT, 0), BaseInfo, Deduced);
1490 std::swap(SuccessfulDeduced, Deduced);
1497 Deduced = DeducedOrig;
1510 std::swap(SuccessfulDeduced, Deduced);
1545 Info, Deduced,
1552 Info, Deduced,
1571 Info, Deduced, 0);
1588 Info, Deduced, TDF);
1601 Info, Deduced, TDF);
1620 Info, Deduced, TDF))
1632 false, Info, Deduced);
1642 Info, Deduced, TDF))
1652 Info, Deduced);
1681 SmallVectorImpl<DeducedTemplateArgument> &Deduced) {
1697 Info, Deduced, 0);
1706 Arg.getAsTemplate(), Info, Deduced);
1760 Info, Deduced);
1763 Info, Deduced);
1766 Info, Deduced);
1840 SmallVectorImpl<DeducedTemplateArgument> &Deduced,
1874 Info, Deduced))
1896 PackDeductionScope PackScope(S, TemplateParams, Deduced, Info, Pattern);
1908 Info, Deduced))
1929 SmallVectorImpl<DeducedTemplateArgument> &Deduced) {
1933 Info, Deduced, false);
2168 SmallVectorImpl<DeducedTemplateArgument> &Deduced,
2183 if (Deduced[I].isNull()) {
2190 if (ConvertDeducedTemplateArgument(S, Param, Deduced[I],
2278 SmallVector<DeducedTemplateArgument, 4> Deduced;
2279 Deduced.resize(Partial->getTemplateParameters()->size());
2284 TemplateArgs, Info, Deduced))
2287 SmallVector<TemplateArgument, 4> DeducedArgs(Deduced.begin(), Deduced.end());
2297 Deduced, Info);
2310 SmallVectorImpl<DeducedTemplateArgument> &Deduced,
2323 if (Deduced[I].isNull()) {
2330 if (ConvertDeducedTemplateArgument(S, Param, Deduced[I], Partial,
2419 SmallVector<DeducedTemplateArgument, 4> Deduced;
2420 Deduced.resize(Partial->getTemplateParameters()->size());
2423 TemplateArgs, Info, Deduced))
2426 SmallVector<TemplateArgument, 4> DeducedArgs(Deduced.begin(), Deduced.end());
2436 Deduced, Info);
2457 /// \param Deduced the deduced template arguments, which will be populated
2476 SmallVectorImpl<DeducedTemplateArgument> &Deduced,
2509 SmallVector<TemplateArgument, 4> DeducedArgs(Deduced.begin(), Deduced.end());
2634 Deduced.reserve(TemplateParams->size());
2638 Deduced.push_back(DeducedTemplateArgument());
2640 Deduced.push_back(Arg);
2756 SmallVectorImpl<DeducedTemplateArgument> &Deduced,
2771 SmallVector<TemplateArgument, 4> DeducedArgs(Deduced.begin(), Deduced.end());
2788 if (!Deduced[I].isNull()) {
2793 Builder.push_back(Deduced[I]);
2810 if (ConvertDeducedTemplateArgument(*this, Param, Deduced[I],
3077 Deduced(TemplateParams->size());
3081 ArgType, Info, Deduced, TDF);
3199 SmallVectorImpl<DeducedTemplateArgument> &Deduced, unsigned TDF);
3207 SmallVectorImpl<DeducedTemplateArgument> &Deduced,
3244 E, Info, Deduced, TDF)))
3263 /*ArrayBound=*/true, Info, Deduced);
3278 SmallVectorImpl<DeducedTemplateArgument> &Deduced,
3286 Deduced, TDF, Result))
3300 ArgType, Info, Deduced, TDF);
3356 SmallVector<DeducedTemplateArgument, 4> Deduced;
3363 Deduced,
3370 NumExplicitlySpecified = Deduced.size();
3378 Deduced.resize(TemplateParams->size());
3411 Info, Deduced, TDF, Result))
3428 Info, Deduced, TDF))
3447 PackDeductionScope PackScope(*this, TemplateParams, Deduced, Info,
3473 Info, Deduced, TDF, Result)) {
3491 Deduced, TDF))
3507 return FinishTemplateArgumentDeduction(FunctionTemplate, Deduced,
3577 SmallVector<DeducedTemplateArgument, 4> Deduced;
3584 Deduced, ParamTypes,
3588 NumExplicitlySpecified = Deduced.size();
3595 Deduced.resize(TemplateParams->size());
3613 Info, Deduced, TDF))
3618 = FinishTemplateArgumentDeduction(FunctionTemplate, Deduced,
3827 SmallVector<DeducedTemplateArgument, 4> Deduced;
3828 Deduced.resize(TemplateParams->size());
3852 P, A, Info, Deduced, TDF))
3860 = FinishTemplateArgumentDeduction(ConversionTemplate, Deduced, 0,
3889 Specialization, Deduced, DestFunctionPtrReturnType,
4012 QualType Deduced = BuildDecltypeType(Init, Init->getLocStart(), false);
4013 if (Deduced.isNull())
4016 Deduced = Context.getCanonicalType(Deduced);
4017 Result = SubstituteAutoTransform(*this, Deduced).Apply(Type);
4047 SmallVector<DeducedTemplateArgument, 1> Deduced;
4048 Deduced.resize(1);
4059 Info, Deduced, TDF))
4073 FuncParam, InitType, Info, Deduced,
4078 if (Deduced[0].getKind() != TemplateArgument::Type)
4081 QualType DeducedType = Deduced[0].getAsType();
4153 llvm::SmallBitVector &Deduced);
4192 SmallVector<DeducedTemplateArgument, 4> Deduced;
4193 Deduced.resize(TemplateParams->size());
4248 Args1.data(), Args1.size(), Info, Deduced,
4260 Info, Deduced, TDF_None,
4270 Info, Deduced, TDF_None,
4282 unsigned ArgIdx = 0, NumArgs = Deduced.size();
4284 if (Deduced[ArgIdx].isNull())
4318 if (Deduced[ArgIdx].isNull() && UsedParameters[ArgIdx])
4542 SmallVector<DeducedTemplateArgument, 4> Deduced;
4549 Deduced.resize(PS2->getTemplateParameters()->size());
4552 PT2, PT1, Info, Deduced, TDF_None,
4555 SmallVector<TemplateArgument, 4> DeducedArgs(Deduced.begin(),Deduced.end());
4558 *this, PS2, PS1->getTemplateArgs(), Deduced, Info);
4562 Deduced.clear();
4563 Deduced.resize(PS1->getTemplateParameters()->size());
4565 *this, PS1->getTemplateParameters(), PT1, PT2, Info, Deduced, TDF_None,
4568 SmallVector<TemplateArgument, 4> DeducedArgs(Deduced.begin(),
4569 Deduced.end());
4572 *this, PS1, PS2->getTemplateArgs(), Deduced, Info);
4590 SmallVector<DeducedTemplateArgument, 4> Deduced;
4604 Deduced.resize(PS2->getTemplateParameters()->size());
4606 *this, PS2->getTemplateParameters(), PT2, PT1, Info, Deduced, TDF_None,
4609 SmallVector<TemplateArgument, 4> DeducedArgs(Deduced.begin(),
4610 Deduced.end());
4614 Deduced, Info);
4618 Deduced.clear();
4619 Deduced.resize(PS1->getTemplateParameters()->size());
4622 PT1, PT2, Info, Deduced, TDF_None,
4625 SmallVector<TemplateArgument, 4> DeducedArgs(Deduced.begin(),Deduced.end());
4629 Deduced, Info);
5036 llvm::SmallBitVector &Deduced) {
5039 Deduced.clear();
5040 Deduced.resize(TemplateParams->size());
5045 true, TemplateParams->getDepth(), Deduced);
5056 llvm::SmallBitVector Deduced(TemplateParams->size());
5058 Deduced);
5060 return Deduced.any();