Lines Matching refs:TemplateParams
137 Sema &S, TemplateParameterList *TemplateParams, QualType Param,
144 DeduceTemplateArguments(Sema &S, TemplateParameterList *TemplateParams,
399 Sema &S, TemplateParameterList *TemplateParams, in DeduceNonTypeTemplateArgument() argument
445 S, TemplateParams, ParamType, ValueType, Info, Deduced, in DeduceNonTypeTemplateArgument()
453 Sema &S, TemplateParameterList *TemplateParams, in DeduceNonTypeTemplateArgument() argument
458 S, TemplateParams, NTTP, in DeduceNonTypeTemplateArgument()
467 Sema &S, TemplateParameterList *TemplateParams, in DeduceNullPtrTemplateArgument() argument
478 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, in DeduceNullPtrTemplateArgument()
488 Sema &S, TemplateParameterList *TemplateParams, in DeduceNonTypeTemplateArgument() argument
492 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, in DeduceNonTypeTemplateArgument()
502 Sema &S, TemplateParameterList *TemplateParams, in DeduceNonTypeTemplateArgument() argument
509 S, TemplateParams, NTTP, DeducedTemplateArgument(New), T, Info, Deduced); in DeduceNonTypeTemplateArgument()
568 DeduceTemplateArguments(Sema &S, TemplateParameterList *TemplateParams, in DeduceTemplateArguments() argument
673 DeduceTemplateSpecArguments(Sema &S, TemplateParameterList *TemplateParams, in DeduceTemplateSpecArguments() argument
723 if (auto Result = DeduceTemplateArguments(S, TemplateParams, TNP, TNA, Info, in DeduceTemplateSpecArguments()
731 return DeduceTemplateArguments(S, TemplateParams, PResolved, AResolved, in DeduceTemplateSpecArguments()
755 DeduceTemplateArguments(S, TemplateParams, TNP, TNA, Info, in DeduceTemplateSpecArguments()
761 return DeduceTemplateArguments(S, TemplateParams, PResolved, in DeduceTemplateSpecArguments()
837 PackDeductionScope(Sema &S, TemplateParameterList *TemplateParams, in PackDeductionScope() argument
841 : S(S), TemplateParams(TemplateParams), Deduced(Deduced), Info(Info), in PackDeductionScope()
848 PackDeductionScope(Sema &S, TemplateParameterList *TemplateParams, in PackDeductionScope() argument
851 : S(S), TemplateParams(TemplateParams), Deduced(Deduced), Info(Info) { in PackDeductionScope()
869 getExpandedPackSize(TemplateParams->getParam(Index))) in addPack()
878 llvm::SmallBitVector SawIndices(TemplateParams->size()); in addPacks()
892 TemplateParams->getParam(Index))) { in addPacks()
1119 NamedDecl *Param = TemplateParams->getParam(Pack.Index); in finish()
1145 TemplateParameterList *TemplateParams; member in __anonc4c693d00111::PackDeductionScope
1191 DeduceTemplateArguments(Sema &S, TemplateParameterList *TemplateParams, in DeduceTemplateArguments() argument
1223 S, TemplateParams, Params[ParamIdx].getUnqualifiedType(), in DeduceTemplateArguments()
1242 PackDeductionScope PackScope(S, TemplateParams, Deduced, Info, Pattern); in DeduceTemplateArguments()
1250 S, TemplateParams, Pattern.getUnqualifiedType(), in DeduceTemplateArguments()
1406 TemplateParameterList *TemplateParams, QualType P, in DeduceTemplateBases() argument
1457 S, TemplateParams, P, NextT, BaseInfo, DeducedCopy); in DeduceTemplateBases()
1525 Sema &S, TemplateParameterList *TemplateParams, QualType P, QualType A, in DeduceTemplateArgumentsByTypeMatch() argument
1649 Info.Param = cast<TemplateTypeParmDecl>(TemplateParams->getParam(Index)); in DeduceTemplateArgumentsByTypeMatch()
1683 Info.Param = cast<TemplateTypeParmDecl>(TemplateParams->getParam(Index)); in DeduceTemplateArgumentsByTypeMatch()
1703 Info.Param = cast<TemplateTypeParmDecl>(TemplateParams->getParam(Index)); in DeduceTemplateArgumentsByTypeMatch()
1807 S, TemplateParams, CP->getElementType(), CA->getElementType(), Info, in DeduceTemplateArgumentsByTypeMatch()
1817 S, TemplateParams, PA->getValueType(), AA->getValueType(), Info, in DeduceTemplateArgumentsByTypeMatch()
1832 S, TemplateParams, P->castAs<PointerType>()->getPointeeType(), in DeduceTemplateArgumentsByTypeMatch()
1845 S, TemplateParams, RP->getPointeeType(), RA->getPointeeType(), Info, in DeduceTemplateArgumentsByTypeMatch()
1857 S, TemplateParams, RP->getPointeeType(), RA->getPointeeType(), Info, in DeduceTemplateArgumentsByTypeMatch()
1871 S, TemplateParams, IAP->getElementType(), IAA->getElementType(), Info, in DeduceTemplateArgumentsByTypeMatch()
1884 S, TemplateParams, CAP->getElementType(), CAA->getElementType(), Info, in DeduceTemplateArgumentsByTypeMatch()
1898 S, TemplateParams, DAP->getElementType(), AA->getElementType(), in DeduceTemplateArgumentsByTypeMatch()
1916 S, TemplateParams, NTTP, Size, S.Context.getSizeType(), in DeduceTemplateArgumentsByTypeMatch()
1922 S, TemplateParams, NTTP, DAA->getSizeExpr(), Info, Deduced); in DeduceTemplateArgumentsByTypeMatch()
1944 S, TemplateParams, FPP->getReturnType(), FPA->getReturnType(), in DeduceTemplateArgumentsByTypeMatch()
1953 S, TemplateParams, FPP->param_type_begin(), FPP->getNumParams(), in DeduceTemplateArgumentsByTypeMatch()
1982 S, TemplateParams, NTTP, Noexcept, S.Context.BoolTy, in DeduceTemplateArgumentsByTypeMatch()
1988 S, TemplateParams, NTTP, ArgNoexceptExpr, Info, Deduced); in DeduceTemplateArgumentsByTypeMatch()
2014 return DeduceTemplateSpecArguments(S, TemplateParams, P, A, Info, in DeduceTemplateArgumentsByTypeMatch()
2021 DeduceTemplateSpecArguments(S, TemplateParams, P, A, Info, Deduced); in DeduceTemplateArgumentsByTypeMatch()
2039 TemplateParams, P, Info, Deduced); in DeduceTemplateArgumentsByTypeMatch()
2070 S, TemplateParams, PPT, APT, Info, Deduced, SubTDF); in DeduceTemplateArgumentsByTypeMatch()
2074 S, TemplateParams, QualType(MPP->getClass(), 0), in DeduceTemplateArgumentsByTypeMatch()
2089 S, TemplateParams, BPP->getPointeeType(), BPA->getPointeeType(), Info, in DeduceTemplateArgumentsByTypeMatch()
2114 S, TemplateParams, VP->getElementType(), ElementType, Info, Deduced, in DeduceTemplateArgumentsByTypeMatch()
2124 S, TemplateParams, VP->getElementType(), VA->getElementType(), in DeduceTemplateArgumentsByTypeMatch()
2140 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, ArgSize, in DeduceTemplateArgumentsByTypeMatch()
2148 S, TemplateParams, VP->getElementType(), VA->getElementType(), in DeduceTemplateArgumentsByTypeMatch()
2159 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, in DeduceTemplateArgumentsByTypeMatch()
2175 S, TemplateParams, VP->getElementType(), VA->getElementType(), in DeduceTemplateArgumentsByTypeMatch()
2191 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, ArgSize, in DeduceTemplateArgumentsByTypeMatch()
2199 S, TemplateParams, VP->getElementType(), VA->getElementType(), in DeduceTemplateArgumentsByTypeMatch()
2210 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, in DeduceTemplateArgumentsByTypeMatch()
2234 S, TemplateParams, MP->getElementType(), MA->getElementType(), Info, in DeduceTemplateArgumentsByTypeMatch()
2246 S, TemplateParams, MP->getElementType(), MA->getElementType(), in DeduceTemplateArgumentsByTypeMatch()
2253 [&S, &Info, &Deduced, &TemplateParams]( in DeduceTemplateArgumentsByTypeMatch()
2289 S, TemplateParams, NTTP, ArgConst, S.Context.getSizeType(), in DeduceTemplateArgumentsByTypeMatch()
2293 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, in DeduceTemplateArgumentsByTypeMatch()
2318 S, TemplateParams, ASP->getPointeeType(), ASA->getPointeeType(), in DeduceTemplateArgumentsByTypeMatch()
2330 S, TemplateParams, NTTP, ASA->getAddrSpaceExpr(), Info, Deduced); in DeduceTemplateArgumentsByTypeMatch()
2340 S, TemplateParams, ASP->getPointeeType(), in DeduceTemplateArgumentsByTypeMatch()
2351 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, in DeduceTemplateArgumentsByTypeMatch()
2373 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, ArgSize, in DeduceTemplateArgumentsByTypeMatch()
2405 S, TemplateParams, PIT->getSelectedType(), A, Info, Deduced, TDF); in DeduceTemplateArgumentsByTypeMatch()
2415 DeduceTemplateArguments(Sema &S, TemplateParameterList *TemplateParams, in DeduceTemplateArguments() argument
2432 S, TemplateParams, P.getAsType(), A.getAsType(), Info, Deduced, 0); in DeduceTemplateArguments()
2439 return DeduceTemplateArguments(S, TemplateParams, P.getAsTemplate(), in DeduceTemplateArguments()
2493 S, TemplateParams, NTTP, DeducedTemplateArgument(A), in DeduceTemplateArguments()
2497 return DeduceNullPtrTemplateArgument(S, TemplateParams, NTTP, in DeduceTemplateArguments()
2502 S, TemplateParams, NTTP, A.getAsDecl(), A.getParamTypeForDecl(), in DeduceTemplateArguments()
2570 DeduceTemplateArguments(Sema &S, TemplateParameterList *TemplateParams, in DeduceTemplateArguments() argument
2612 DeduceTemplateArguments(S, TemplateParams, Pi, Ai, Info, Deduced); in DeduceTemplateArguments()
2631 PackDeductionScope PackScope(S, TemplateParams, Deduced, Info, Pattern); in DeduceTemplateArguments()
2644 DeduceTemplateArguments(S, TemplateParams, Pi, Ai, Info, Deduced); in DeduceTemplateArguments()
2662 TemplateParameterList *TemplateParams, ArrayRef<TemplateArgument> Ps, in DeduceTemplateArguments() argument
2666 return ::DeduceTemplateArguments(*this, TemplateParams, Ps, As, Info, Deduced, in DeduceTemplateArguments()
2926 TemplateParameterList *TemplateParams = Template->getTemplateParameters(); in ConvertDeducedTemplateArguments() local
2928 for (unsigned I = 0, N = TemplateParams->size(); I != N; ++I) { in ConvertDeducedTemplateArguments()
2929 NamedDecl *Param = TemplateParams->getParam(I); in ConvertDeducedTemplateArguments()
2937 PackDeductionScope(S, TemplateParams, Deduced, Info, I).finish(); in ConvertDeducedTemplateArguments()
3012 const_cast<NamedDecl *>(TemplateParams->getParam(I))); in ConvertDeducedTemplateArguments()
3026 const_cast<NamedDecl *>(TemplateParams->getParam(I))); in ConvertDeducedTemplateArguments()
3184 TemplateParameterList *TemplateParams = Template->getTemplateParameters(); in FinishTemplateArgumentDeduction() local
3185 for (unsigned I = 0, E = TemplateParams->size(); I != E; ++I) { in FinishTemplateArgumentDeduction()
3189 Info.Param = makeTemplateParameter(TemplateParams->getParam(I)); in FinishTemplateArgumentDeduction()
3235 TemplateParameterList *TemplateParams = Template->getTemplateParameters(); in FinishTemplateArgumentDeduction() local
3236 for (unsigned I = 0, E = TemplateParams->size(); I != E; ++I) { in FinishTemplateArgumentDeduction()
3240 Info.Param = makeTemplateParameter(TemplateParams->getParam(I)); in FinishTemplateArgumentDeduction()
3438 TemplateParameterList *TemplateParams in SubstituteExplicitTemplateArguments() local
3480 if (Index >= TemplateParams->size()) in SubstituteExplicitTemplateArguments()
3482 Info.Param = makeTemplateParameter(TemplateParams->getParam(Index)); in SubstituteExplicitTemplateArguments()
3509 auto *Param = TemplateParams->getParam(CanonicalBuilder.size() - 1); in SubstituteExplicitTemplateArguments()
3607 Deduced.reserve(TemplateParams->size()); in SubstituteExplicitTemplateArguments()
4037 ResolveOverloadForDeduction(Sema &S, TemplateParameterList *TemplateParams, in ResolveOverloadForDeduction() argument
4126 Deduced(TemplateParams->size()); in ResolveOverloadForDeduction()
4129 S, TemplateParams, ParamType, ArgType, Info, Deduced, TDF); in ResolveOverloadForDeduction()
4147 Sema &S, TemplateParameterList *TemplateParams, unsigned FirstInnerIndex, in AdjustFunctionParmAndArgTypesForDeduction() argument
4168 ArgType = ResolveOverloadForDeduction(S, TemplateParams, Arg, ParamType, in AdjustFunctionParmAndArgTypesForDeduction()
4245 Sema &S, TemplateParameterList *TemplateParams, unsigned FirstInnerIndex,
4257 Sema &S, TemplateParameterList *TemplateParams, QualType AdjustedParamType, in DeduceFromInitializerList() argument
4293 S, TemplateParams, 0, ElTy, E->getType(), in DeduceFromInitializerList()
4314 S, TemplateParams, NTTP, llvm::APSInt(Size), T, in DeduceFromInitializerList()
4327 Sema &S, TemplateParameterList *TemplateParams, unsigned FirstInnerIndex, in DeduceTemplateArgumentsFromCallArgument() argument
4341 S, TemplateParams, FirstInnerIndex, ParamType, ArgType, in DeduceTemplateArgumentsFromCallArgument()
4347 return DeduceFromInitializerList(S, TemplateParams, ParamType, ILE, Info, in DeduceTemplateArgumentsFromCallArgument()
4358 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams, ParamType, in DeduceTemplateArgumentsFromCallArgument()
4402 TemplateParameterList *TemplateParams in DeduceTemplateArguments() local
4439 *this, TemplateParams, FirstInnerIndex, ParamType, ObjectType, in DeduceTemplateArguments()
4447 *this, TemplateParams, FirstInnerIndex, ParamType, in DeduceTemplateArguments()
4454 Deduced.resize(TemplateParams->size()); in DeduceTemplateArguments()
4488 PackDeductionScope PackScope(*this, TemplateParams, Deduced, Info, in DeduceTemplateArguments()
4632 TemplateParameterList *TemplateParams in DeduceTemplateArguments() local
4666 Deduced.resize(TemplateParams->size()); in DeduceTemplateArguments()
4682 *this, TemplateParams, FunctionType, ArgFunctionType, Info, Deduced, in DeduceTemplateArguments()
4823 TemplateParameterList *TemplateParams in DeduceTemplateArguments() local
4826 Deduced.resize(TemplateParams->size()); in DeduceTemplateArguments()
4854 *this, TemplateParams, getFirstInnerIndex(ConversionTemplate), in DeduceTemplateArguments()
4863 *this, TemplateParams, P, A, Info, Deduced, TDF); in DeduceTemplateArguments()
5419 TemplateParameterList *TemplateParams = FT2->getTemplateParameters(); in isAtLeastAsSpecializedAs() local
5421 Deduced.resize(TemplateParams->size()); in isAtLeastAsSpecializedAs()
5429 if (DeduceTemplateArguments(S, TemplateParams, Args2.data(), Args2.size(), in isAtLeastAsSpecializedAs()
5441 S, TemplateParams, Proto2->getReturnType(), Proto1->getReturnType(), in isAtLeastAsSpecializedAs()
5451 S, TemplateParams, FD2->getType(), FD1->getType(), Info, Deduced, in isAtLeastAsSpecializedAs()
5480 llvm::SmallBitVector UsedParameters(TemplateParams->size()); in isAtLeastAsSpecializedAs()
5485 TemplateParams->getDepth(), UsedParameters); in isAtLeastAsSpecializedAs()
5491 TemplateParams->getDepth(), UsedParameters); in isAtLeastAsSpecializedAs()
5517 /*OnlyDeduced=*/false, TemplateParams->getDepth(), UsedParameters); in isAtLeastAsSpecializedAs()
6721 TemplateParameterList *TemplateParams in MarkDeducedTemplateParameters() local
6724 Deduced.resize(TemplateParams->size()); in MarkDeducedTemplateParameters()
6729 true, TemplateParams->getDepth(), Deduced); in MarkDeducedTemplateParameters()
6738 TemplateParameterList *TemplateParams in hasDeducibleTemplateParameters() local
6740 llvm::SmallBitVector Deduced(TemplateParams->size()); in hasDeducibleTemplateParameters()
6741 ::MarkUsedTemplateParameters(S.Context, T, true, TemplateParams->getDepth(), in hasDeducibleTemplateParameters()