Lines Matching defs:TemplateParams
136 TemplateParameterList *TemplateParams,
144 TemplateParameterList *TemplateParams,
155 DeduceTemplateArguments(Sema &S, TemplateParameterList *TemplateParams,
387 Sema &S, TemplateParameterList *TemplateParams,
432 S, TemplateParams, ParamType, ValueType, Info, Deduced,
440 Sema &S, TemplateParameterList *TemplateParams,
445 S, TemplateParams, NTTP,
454 Sema &S, TemplateParameterList *TemplateParams,
465 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP,
475 Sema &S, TemplateParameterList *TemplateParams,
478 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP,
488 Sema &S, TemplateParameterList *TemplateParams,
495 S, TemplateParams, NTTP, DeducedTemplateArgument(New), T, Info, Deduced);
500 TemplateParameterList *TemplateParams,
548 /// \param TemplateParams the template parameters that we are deducing
563 TemplateParameterList *TemplateParams,
579 = DeduceTemplateArguments(S, TemplateParams,
589 return DeduceTemplateArguments(S, TemplateParams,
616 TemplateParams,
623 return DeduceTemplateArguments(S, TemplateParams, Param->template_arguments(),
690 PackDeductionScope(Sema &S, TemplateParameterList *TemplateParams,
693 : S(S), TemplateParams(TemplateParams), Deduced(Deduced), Info(Info) {
699 PackDeductionScope(Sema &S, TemplateParameterList *TemplateParams,
702 : S(S), TemplateParams(TemplateParams), Deduced(Deduced), Info(Info) {
719 getExpandedPackSize(TemplateParams->getParam(Index)))
728 llvm::SmallBitVector SawIndices(TemplateParams->size());
742 TemplateParams->getParam(Index))) {
947 NamedDecl *Param = TemplateParams->getParam(Pack.Index);
973 TemplateParameterList *TemplateParams;
992 /// \param TemplateParams The template parameters that we are deducing
1018 TemplateParameterList *TemplateParams,
1051 = DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1069 PackDeductionScope PackScope(S, TemplateParams, Deduced, Info, Pattern);
1077 = DeduceTemplateArgumentsByTypeMatch(S, TemplateParams, Pattern,
1213 /// \param TemplateParams the template parameters that we are deducing.
1225 Sema &S, const RecordType *RecordT, TemplateParameterList *TemplateParams,
1277 DeduceTemplateArguments(S, TemplateParams, SpecParam,
1325 /// \param TemplateParams the template parameters that we are deducing
1346 TemplateParameterList *TemplateParams,
1485 Info.Param = cast<TemplateTypeParmDecl>(TemplateParams->getParam(Index));
1519 Info.Param = cast<TemplateTypeParmDecl>(TemplateParams->getParam(Index));
1544 Info.Param = cast<TemplateTypeParmDecl>(TemplateParams->getParam(Index));
1653 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1663 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1683 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1696 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1708 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1722 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1741 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1759 = DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1778 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, Size,
1786 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP,
1816 S, TemplateParams, FunctionProtoParam->getReturnType(),
1822 S, TemplateParams, FunctionProtoParam->param_type_begin(),
1851 S, TemplateParams, NTTP, Noexcept, S.Context.BoolTy,
1857 S, TemplateParams, NTTP, ArgNoexceptExpr, Info, Deduced);
1892 return DeduceTemplateArguments(S, TemplateParams, SpecParam, Arg, Info,
1899 S, TemplateParams, SpecParam, Arg, Info, Deduced);
1915 S, RecordT, TemplateParams, SpecParam, Info, Deduced);
1947 = DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1954 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1973 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
1990 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
2003 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
2019 S, TemplateParams, VectorParam->getElementType(),
2034 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, ArgSize,
2043 S, TemplateParams, VectorParam->getElementType(),
2054 S, TemplateParams, NTTP, VectorArg->getSizeExpr(), Info, Deduced);
2070 = DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
2087 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, ArgSize,
2096 = DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
2108 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP,
2133 S, TemplateParams, MatrixParam->getElementType(),
2147 S, TemplateParams, MatrixParam->getElementType(),
2153 [&S, &Info, &Deduced, &TemplateParams](
2190 S, TemplateParams, NTTP, ArgConst, S.Context.getSizeType(),
2195 S, TemplateParams, NTTP, (ArgDepMatrix->*GetArgDimensionExpr)(),
2222 S, TemplateParams, AddressSpaceParam->getPointeeType(),
2233 S, TemplateParams, NTTP, AddressSpaceArg->getAddrSpaceExpr(), Info,
2245 S, TemplateParams, AddressSpaceParam->getPointeeType(),
2255 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP,
2277 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, ArgSize,
2310 TemplateParameterList *TemplateParams,
2327 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
2337 return DeduceTemplateArguments(S, TemplateParams,
2389 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP,
2395 return DeduceNullPtrTemplateArgument(S, TemplateParams, NTTP,
2399 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP,
2402 return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP,
2466 DeduceTemplateArguments(Sema &S, TemplateParameterList *TemplateParams,
2502 = DeduceTemplateArguments(S, TemplateParams,
2522 PackDeductionScope PackScope(S, TemplateParams, Deduced, Info, Pattern);
2532 = DeduceTemplateArguments(S, TemplateParams, Pattern, Args[ArgIdx],
2550 TemplateParameterList *TemplateParams,
2555 return DeduceTemplateArguments(S, TemplateParams, ParamList.asArray(),
2803 TemplateParameterList *TemplateParams = Template->getTemplateParameters();
2805 for (unsigned I = 0, N = TemplateParams->size(); I != N; ++I) {
2806 NamedDecl *Param = TemplateParams->getParam(I);
2814 PackDeductionScope(S, TemplateParams, Deduced, Info, I).finish())
2868 const_cast<NamedDecl *>(TemplateParams->getParam(I)));
2881 const_cast<NamedDecl *>(TemplateParams->getParam(I)));
2995 TemplateParameterList *TemplateParams = Template->getTemplateParameters();
2996 for (unsigned I = 0, E = TemplateParams->size(); I != E; ++I) {
2999 Info.Param = makeTemplateParameter(TemplateParams->getParam(I));
3039 TemplateParameterList *TemplateParams = Template->getTemplateParameters();
3040 for (unsigned I = 0, E = TemplateParams->size(); I != E; ++I) {
3044 Info.Param = makeTemplateParameter(TemplateParams->getParam(I));
3216 TemplateParameterList *TemplateParams
3256 if (Index >= TemplateParams->size())
3258 Info.Param = makeTemplateParameter(TemplateParams->getParam(Index));
3282 auto *Param = TemplateParams->getParam(Builder.size() - 1);
3390 Deduced.reserve(TemplateParams->size());
3741 ResolveOverloadForDeduction(Sema &S, TemplateParameterList *TemplateParams,
3826 Deduced(TemplateParams->size());
3829 = DeduceTemplateArgumentsByTypeMatch(S, TemplateParams, ParamType,
3847 Sema &S, TemplateParameterList *TemplateParams, unsigned FirstInnerIndex,
3865 ArgType = ResolveOverloadForDeduction(S, TemplateParams,
3942 Sema &S, TemplateParameterList *TemplateParams, unsigned FirstInnerIndex,
3951 Sema &S, TemplateParameterList *TemplateParams, QualType AdjustedParamType,
3987 S, TemplateParams, 0, ElTy, E, Info, Deduced, OriginalCallArgs, true,
4006 S, TemplateParams, NTTP, llvm::APSInt(Size), T,
4018 Sema &S, TemplateParameterList *TemplateParams, unsigned FirstInnerIndex,
4029 S, TemplateParams, FirstInnerIndex, ParamType, ArgType, Arg, TDF))
4034 return DeduceFromInitializerList(S, TemplateParams, ParamType, ILE, Info,
4044 return DeduceTemplateArgumentsByTypeMatch(S, TemplateParams, ParamType,
4104 TemplateParameterList *TemplateParams
4139 *this, TemplateParams, FirstInnerIndex, ParamType, Args[ArgIdx], Info, Deduced,
4144 Deduced.resize(TemplateParams->size());
4165 PackDeductionScope PackScope(*this, TemplateParams, Deduced, Info,
4302 TemplateParameterList *TemplateParams
4336 Deduced.resize(TemplateParams->size());
4354 = DeduceTemplateArgumentsByTypeMatch(*this, TemplateParams,
4489 TemplateParameterList *TemplateParams
4492 Deduced.resize(TemplateParams->size());
4515 = DeduceTemplateArgumentsByTypeMatch(*this, TemplateParams,
5084 TemplateParameterList *TemplateParams = FT2->getTemplateParameters();
5086 Deduced.resize(TemplateParams->size());
5148 if (DeduceTemplateArguments(S, TemplateParams, Args2.data(), Args2.size(),
5160 S, TemplateParams, Proto2->getReturnType(), Proto1->getReturnType(),
5169 if (DeduceTemplateArgumentsByTypeMatch(S, TemplateParams,
5199 llvm::SmallBitVector UsedParameters(TemplateParams->size());
5204 TemplateParams->getDepth(),
5210 TemplateParams->getDepth(), UsedParameters);
5215 TemplateParams->getDepth(),
6192 TemplateParameterList *TemplateParams
6195 Deduced.resize(TemplateParams->size());
6200 true, TemplateParams->getDepth(), Deduced);
6209 TemplateParameterList *TemplateParams
6211 llvm::SmallBitVector Deduced(TemplateParams->size());
6212 ::MarkUsedTemplateParameters(S.Context, T, true, TemplateParams->getDepth(),