Lines Matching refs:Template
182 TemplateName Template; in isTemplateName() local
189 Template = Context.getOverloadedTemplateName(R.begin(), R.end()); in isTemplateName()
199 Template = Context.getQualifiedTemplateName(Qualifier, in isTemplateName()
202 Template = TemplateName(TD); in isTemplateName()
219 TemplateResult = TemplateTy::make(Template); in isTemplateName()
477 assert(Kind == Template && in getTemplatePackExpansion()
503 case ParsedTemplateArgument::Template: { in translateTemplateArgument()
504 TemplateName Template = Arg.getAsTemplate().get(); in translateTemplateArgument() local
507 TArg = TemplateArgument(Template, Optional<unsigned int>()); in translateTemplateArgument()
509 TArg = Template; in translateTemplateArgument()
1695 if (TemplateDecl *Template = TST->getTemplateName().getAsTemplateDecl()) { in MatchTemplateParametersToScopeSpecifier() local
1696 if (TypeDecl *Parent = dyn_cast<TypeDecl>(Template->getDeclContext())) in MatchTemplateParametersToScopeSpecifier()
1832 if (TemplateDecl *Template = TST->getTemplateName().getAsTemplateDecl()) { in MatchTemplateParametersToScopeSpecifier() local
1833 ExpectedTemplateParams = Template->getTemplateParameters(); in MatchTemplateParametersToScopeSpecifier()
1998 if (TemplateDecl *Template = Name.getAsTemplateDecl()) { in NoteAllFoundTemplates() local
1999 Diag(Template->getLocation(), diag::note_template_declared_here) in NoteAllFoundTemplates()
2000 << (isa<FunctionTemplateDecl>(Template) in NoteAllFoundTemplates()
2002 : isa<ClassTemplateDecl>(Template) in NoteAllFoundTemplates()
2004 : isa<VarTemplateDecl>(Template) in NoteAllFoundTemplates()
2006 : isa<TypeAliasTemplateDecl>(Template) ? 3 : 4) in NoteAllFoundTemplates()
2007 << Template->getDeclName(); in NoteAllFoundTemplates()
2089 TemplateDecl *Template = Name.getAsTemplateDecl(); in CheckTemplateIdType() local
2090 if (!Template || isa<FunctionTemplateDecl>(Template) || in CheckTemplateIdType()
2091 isa<VarTemplateDecl>(Template)) { in CheckTemplateIdType()
2106 if (CheckTemplateArgumentList(Template, TemplateLoc, TemplateArgs, in CheckTemplateIdType()
2114 dyn_cast<TypeAliasTemplateDecl>(Template)) { in CheckTemplateIdType()
2131 InstantiatingTemplate Inst(*this, TemplateLoc, Template); in CheckTemplateIdType()
2167 if (isa<ClassTemplateDecl>(Template)) { in CheckTemplateIdType()
2199 = dyn_cast<ClassTemplateDecl>(Template)) { in CheckTemplateIdType()
2228 } else if (auto *BTD = dyn_cast<BuiltinTemplateDecl>(Template)) { in CheckTemplateIdType()
2249 TemplateName Template = TemplateD.get(); in ActOnTemplateIdType() local
2255 if (DependentTemplateName *DTN = Template.getAsDependentTemplateName()) { in ActOnTemplateIdType()
2276 QualType Result = CheckTemplateIdType(Template, TemplateLoc, TemplateArgs); in ActOnTemplateIdType()
2316 TemplateName Template = TemplateD.get(); in ActOnTagTemplateIdType() local
2327 if (DependentTemplateName *DTN = Template.getAsDependentTemplateName()) { in ActOnTagTemplateIdType()
2349 dyn_cast_or_null<TypeAliasTemplateDecl>(Template.getAsTemplateDecl())) { in ActOnTagTemplateIdType()
2358 QualType Result = CheckTemplateIdType(Template, TemplateLoc, TemplateArgs); in ActOnTagTemplateIdType()
2437 case TemplateArgument::Template: in isTemplateArgumentTemplateParameter()
2498 TemplateName Name = TemplateId->Template.get(); in ActOnVarTemplateSpecialization()
2718 Sema::CheckVarTemplateId(VarTemplateDecl *Template, SourceLocation TemplateLoc, in CheckVarTemplateId() argument
2721 assert(Template && "A variable template id without template?"); in CheckVarTemplateId()
2726 Template, TemplateNameLoc, in CheckVarTemplateId()
2734 if (VarTemplateSpecializationDecl *Spec = Template->findSpecialization( in CheckVarTemplateId()
2743 VarDecl *InstantiationPattern = Template->getTemplatedDecl(); in CheckVarTemplateId()
2768 Template->getPartialSpecializations(PartialSpecs); in CheckVarTemplateId()
2840 Template, InstantiationPattern, *InstantiationArgs, TemplateArgs, in CheckVarTemplateId()
2872 VarTemplateDecl *Template, SourceLocation TemplateLoc, in CheckVarTemplateId() argument
2875 DeclResult Decl = CheckVarTemplateId(Template, TemplateLoc, NameInfo.getLoc(), in CheckVarTemplateId()
3081 case TemplateArgument::Template: { in CheckTemplateTypeArgument()
3205 TemplateDecl *Template, in SubstDefaultTemplateArgument() argument
3216 Template, Converted, in SubstDefaultTemplateArgument()
3230 Sema::ContextRAII SavedContext(SemaRef, Template->getDeclContext()); in SubstDefaultTemplateArgument()
3263 TemplateDecl *Template, in SubstDefaultTemplateArgument() argument
3269 Template, Converted, in SubstDefaultTemplateArgument()
3283 Sema::ContextRAII SavedContext(SemaRef, Template->getDeclContext()); in SubstDefaultTemplateArgument()
3316 TemplateDecl *Template, in SubstDefaultTemplateArgument() argument
3322 Sema::InstantiatingTemplate Inst(SemaRef, TemplateLoc, Template, Converted, in SubstDefaultTemplateArgument()
3336 Sema::ContextRAII SavedContext(SemaRef, Template->getDeclContext()); in SubstDefaultTemplateArgument()
3357 Sema::SubstDefaultTemplateArgumentIfAvailable(TemplateDecl *Template, in SubstDefaultTemplateArgumentIfAvailable() argument
3371 TypeSourceInfo *DI = SubstDefaultTemplateArgument(*this, Template, in SubstDefaultTemplateArgumentIfAvailable()
3388 ExprResult Arg = SubstDefaultTemplateArgument(*this, Template, in SubstDefaultTemplateArgumentIfAvailable()
3407 TemplateName TName = SubstDefaultTemplateArgument(*this, Template, in SubstDefaultTemplateArgumentIfAvailable()
3449 NamedDecl *Template, in CheckTemplateArgument() argument
3469 !isa<TemplateTemplateParmDecl>(Template) && in CheckTemplateArgument()
3470 !Template->getDeclContext()->isDependentContext()) { in CheckTemplateArgument()
3472 InstantiatingTemplate Inst(*this, TemplateLoc, Template, in CheckTemplateArgument()
3524 case TemplateArgument::Template: in CheckTemplateArgument()
3613 InstantiatingTemplate Inst(*this, TemplateLoc, Template, in CheckTemplateArgument()
3632 case TemplateArgument::Template: in CheckTemplateArgument()
3663 static bool diagnoseArityMismatch(Sema &S, TemplateDecl *Template, in diagnoseArityMismatch() argument
3666 TemplateParameterList *Params = Template->getTemplateParameters(); in diagnoseArityMismatch()
3676 << (isa<ClassTemplateDecl>(Template)? 0 : in diagnoseArityMismatch()
3677 isa<FunctionTemplateDecl>(Template)? 1 : in diagnoseArityMismatch()
3678 isa<TemplateTemplateParmDecl>(Template)? 2 : 3) in diagnoseArityMismatch()
3679 << Template << Range; in diagnoseArityMismatch()
3680 S.Diag(Template->getLocation(), diag::note_template_decl_here) in diagnoseArityMismatch()
3743 bool Sema::CheckTemplateArgumentList(TemplateDecl *Template, in CheckTemplateArgumentList() argument
3753 TemplateParameterList *Params = Template->getTemplateParameters(); in CheckTemplateArgumentList()
3762 bool isTemplateTemplateParameter = isa<TemplateTemplateParmDecl>(Template); in CheckTemplateArgumentList()
3786 << (isa<ClassTemplateDecl>(Template)? 0 : in CheckTemplateArgumentList()
3787 isa<FunctionTemplateDecl>(Template)? 1 : in CheckTemplateArgumentList()
3788 isa<TemplateTemplateParmDecl>(Template)? 2 : 3) in CheckTemplateArgumentList()
3789 << Template; in CheckTemplateArgumentList()
3790 Diag(Template->getLocation(), diag::note_template_decl_here) in CheckTemplateArgumentList()
3798 if (CheckTemplateArgument(*Param, NewArgs[ArgIdx], Template, in CheckTemplateArgumentList()
3806 if (PackExpansionIntoNonPack && isa<TypeAliasTemplateDecl>(Template)) { in CheckTemplateArgumentList()
3893 return diagnoseMissingArgument(*this, TemplateLoc, Template, TTP, in CheckTemplateArgumentList()
3897 Template, in CheckTemplateArgumentList()
3910 return diagnoseMissingArgument(*this, TemplateLoc, Template, NTTP, in CheckTemplateArgumentList()
3913 ExprResult E = SubstDefaultTemplateArgument(*this, Template, in CheckTemplateArgumentList()
3928 return diagnoseMissingArgument(*this, TemplateLoc, Template, TempParm, in CheckTemplateArgumentList()
3932 TemplateName Name = SubstDefaultTemplateArgument(*this, Template, in CheckTemplateArgumentList()
3947 InstantiatingTemplate Inst(*this, RAngleLoc, Template, *Param, Converted, in CheckTemplateArgumentList()
3953 if (CheckTemplateArgument(*Param, Arg, Template, TemplateLoc, in CheckTemplateArgumentList()
3981 return diagnoseArityMismatch(*this, Template, TemplateLoc, NewArgs); in CheckTemplateArgumentList()
5318 TemplateDecl *Template = Name.getAsTemplateDecl(); in CheckTemplateArgument() local
5319 if (!Template) { in CheckTemplateArgument()
5337 if (!isa<ClassTemplateDecl>(Template) && in CheckTemplateArgument()
5338 !isa<TemplateTemplateParmDecl>(Template) && in CheckTemplateArgument()
5339 !isa<TypeAliasTemplateDecl>(Template)) { in CheckTemplateArgument()
5340 assert(isa<FunctionTemplateDecl>(Template) && in CheckTemplateArgument()
5343 Diag(Template->getLocation(), diag::note_template_arg_refers_here_func) in CheckTemplateArgument()
5344 << Template; in CheckTemplateArgument()
5351 return !TemplateParameterListsAreEqual(Template->getTemplateParameters(), in CheckTemplateArgument()
6156 TemplateName Name = TemplateId.Template.get(); in ActOnClassTemplateSpecialization()
8054 TemplateName Template = TemplateIn.get(); in ActOnTypenameType() local
8055 if (DependentTemplateName *DTN = Template.getAsDependentTemplateName()) { in ActOnTypenameType()
8079 QualType T = CheckTemplateIdType(Template, TemplateNameLoc, TemplateArgs); in ActOnTypenameType()