Lines Matching refs:Template
181 TemplateName Template; in isTemplateName() local
188 Template = Context.getOverloadedTemplateName(R.begin(), R.end()); in isTemplateName()
198 Template = Context.getQualifiedTemplateName(Qualifier, in isTemplateName()
201 Template = TemplateName(TD); in isTemplateName()
217 TemplateResult = TemplateTy::make(Template); in isTemplateName()
476 assert(Kind == Template && in getTemplatePackExpansion()
502 case ParsedTemplateArgument::Template: { in translateTemplateArgument()
503 TemplateName Template = Arg.getAsTemplate().get(); in translateTemplateArgument() local
506 TArg = TemplateArgument(Template, Optional<unsigned int>()); in translateTemplateArgument()
508 TArg = Template; in translateTemplateArgument()
1665 if (TemplateDecl *Template = TST->getTemplateName().getAsTemplateDecl()) { in MatchTemplateParametersToScopeSpecifier() local
1666 if (TypeDecl *Parent = dyn_cast<TypeDecl>(Template->getDeclContext())) in MatchTemplateParametersToScopeSpecifier()
1802 if (TemplateDecl *Template = TST->getTemplateName().getAsTemplateDecl()) { in MatchTemplateParametersToScopeSpecifier() local
1803 ExpectedTemplateParams = Template->getTemplateParameters(); in MatchTemplateParametersToScopeSpecifier()
1968 if (TemplateDecl *Template = Name.getAsTemplateDecl()) { in NoteAllFoundTemplates() local
1969 Diag(Template->getLocation(), diag::note_template_declared_here) in NoteAllFoundTemplates()
1970 << (isa<FunctionTemplateDecl>(Template) in NoteAllFoundTemplates()
1972 : isa<ClassTemplateDecl>(Template) in NoteAllFoundTemplates()
1974 : isa<VarTemplateDecl>(Template) in NoteAllFoundTemplates()
1976 : isa<TypeAliasTemplateDecl>(Template) ? 3 : 4) in NoteAllFoundTemplates()
1977 << Template->getDeclName(); in NoteAllFoundTemplates()
2007 TemplateDecl *Template = Name.getAsTemplateDecl(); in CheckTemplateIdType() local
2008 if (!Template || isa<FunctionTemplateDecl>(Template) || in CheckTemplateIdType()
2009 isa<VarTemplateDecl>(Template)) { in CheckTemplateIdType()
2024 if (CheckTemplateArgumentList(Template, TemplateLoc, TemplateArgs, in CheckTemplateIdType()
2032 dyn_cast<TypeAliasTemplateDecl>(Template)) { in CheckTemplateIdType()
2049 InstantiatingTemplate Inst(*this, TemplateLoc, Template); in CheckTemplateIdType()
2085 if (isa<ClassTemplateDecl>(Template)) { in CheckTemplateIdType()
2117 = dyn_cast<ClassTemplateDecl>(Template)) { in CheckTemplateIdType()
2164 TemplateName Template = TemplateD.get(); in ActOnTemplateIdType() local
2170 if (DependentTemplateName *DTN = Template.getAsDependentTemplateName()) { in ActOnTemplateIdType()
2191 QualType Result = CheckTemplateIdType(Template, TemplateLoc, TemplateArgs); in ActOnTemplateIdType()
2231 TemplateName Template = TemplateD.get(); in ActOnTagTemplateIdType() local
2242 if (DependentTemplateName *DTN = Template.getAsDependentTemplateName()) { in ActOnTagTemplateIdType()
2264 dyn_cast_or_null<TypeAliasTemplateDecl>(Template.getAsTemplateDecl())) { in ActOnTagTemplateIdType()
2273 QualType Result = CheckTemplateIdType(Template, TemplateLoc, TemplateArgs); in ActOnTagTemplateIdType()
2352 case TemplateArgument::Template: in isTemplateArgumentTemplateParameter()
2413 TemplateName Name = TemplateId->Template.get(); in ActOnVarTemplateSpecialization()
2652 Sema::CheckVarTemplateId(VarTemplateDecl *Template, SourceLocation TemplateLoc, in CheckVarTemplateId() argument
2655 assert(Template && "A variable template id without template?"); in CheckVarTemplateId()
2660 Template, TemplateNameLoc, in CheckVarTemplateId()
2668 if (VarTemplateSpecializationDecl *Spec = Template->findSpecialization( in CheckVarTemplateId()
2677 VarDecl *InstantiationPattern = Template->getTemplatedDecl(); in CheckVarTemplateId()
2701 Template->getPartialSpecializations(PartialSpecs); in CheckVarTemplateId()
2773 Template, InstantiationPattern, *InstantiationArgs, TemplateArgs, in CheckVarTemplateId()
2805 VarTemplateDecl *Template, SourceLocation TemplateLoc, in CheckVarTemplateId() argument
2808 DeclResult Decl = CheckVarTemplateId(Template, TemplateLoc, NameInfo.getLoc(), in CheckVarTemplateId()
3014 case TemplateArgument::Template: { in CheckTemplateTypeArgument()
3138 TemplateDecl *Template, in SubstDefaultTemplateArgument() argument
3149 Template, Converted, in SubstDefaultTemplateArgument()
3163 Sema::ContextRAII SavedContext(SemaRef, Template->getDeclContext()); in SubstDefaultTemplateArgument()
3196 TemplateDecl *Template, in SubstDefaultTemplateArgument() argument
3202 Template, Converted, in SubstDefaultTemplateArgument()
3216 Sema::ContextRAII SavedContext(SemaRef, Template->getDeclContext()); in SubstDefaultTemplateArgument()
3248 TemplateDecl *Template, in SubstDefaultTemplateArgument() argument
3254 Sema::InstantiatingTemplate Inst(SemaRef, TemplateLoc, Template, Converted, in SubstDefaultTemplateArgument()
3268 Sema::ContextRAII SavedContext(SemaRef, Template->getDeclContext()); in SubstDefaultTemplateArgument()
3289 Sema::SubstDefaultTemplateArgumentIfAvailable(TemplateDecl *Template, in SubstDefaultTemplateArgumentIfAvailable() argument
3303 TypeSourceInfo *DI = SubstDefaultTemplateArgument(*this, Template, in SubstDefaultTemplateArgumentIfAvailable()
3320 ExprResult Arg = SubstDefaultTemplateArgument(*this, Template, in SubstDefaultTemplateArgumentIfAvailable()
3339 TemplateName TName = SubstDefaultTemplateArgument(*this, Template, in SubstDefaultTemplateArgumentIfAvailable()
3381 NamedDecl *Template, in CheckTemplateArgument() argument
3401 !isa<TemplateTemplateParmDecl>(Template) && in CheckTemplateArgument()
3402 !Template->getDeclContext()->isDependentContext()) { in CheckTemplateArgument()
3404 InstantiatingTemplate Inst(*this, TemplateLoc, Template, in CheckTemplateArgument()
3449 case TemplateArgument::Template: in CheckTemplateArgument()
3538 InstantiatingTemplate Inst(*this, TemplateLoc, Template, in CheckTemplateArgument()
3557 case TemplateArgument::Template: in CheckTemplateArgument()
3588 static bool diagnoseArityMismatch(Sema &S, TemplateDecl *Template, in diagnoseArityMismatch() argument
3591 TemplateParameterList *Params = Template->getTemplateParameters(); in diagnoseArityMismatch()
3601 << (isa<ClassTemplateDecl>(Template)? 0 : in diagnoseArityMismatch()
3602 isa<FunctionTemplateDecl>(Template)? 1 : in diagnoseArityMismatch()
3603 isa<TemplateTemplateParmDecl>(Template)? 2 : 3) in diagnoseArityMismatch()
3604 << Template << Range; in diagnoseArityMismatch()
3605 S.Diag(Template->getLocation(), diag::note_template_decl_here) in diagnoseArityMismatch()
3639 bool Sema::CheckTemplateArgumentList(TemplateDecl *Template, in CheckTemplateArgumentList() argument
3644 TemplateParameterList *Params = Template->getTemplateParameters(); in CheckTemplateArgumentList()
3653 bool isTemplateTemplateParameter = isa<TemplateTemplateParmDecl>(Template); in CheckTemplateArgumentList()
3679 << (isa<ClassTemplateDecl>(Template)? 0 : in CheckTemplateArgumentList()
3680 isa<FunctionTemplateDecl>(Template)? 1 : in CheckTemplateArgumentList()
3681 isa<TemplateTemplateParmDecl>(Template)? 2 : 3) in CheckTemplateArgumentList()
3682 << Template; in CheckTemplateArgumentList()
3683 Diag(Template->getLocation(), diag::note_template_decl_here) in CheckTemplateArgumentList()
3691 if (CheckTemplateArgument(*Param, TemplateArgs[ArgIdx], Template, in CheckTemplateArgumentList()
3697 isa<TypeAliasTemplateDecl>(Template) && in CheckTemplateArgumentList()
3805 return diagnoseArityMismatch(*this, Template, TemplateLoc, in CheckTemplateArgumentList()
3809 Template, in CheckTemplateArgumentList()
3822 return diagnoseArityMismatch(*this, Template, TemplateLoc, in CheckTemplateArgumentList()
3825 ExprResult E = SubstDefaultTemplateArgument(*this, Template, in CheckTemplateArgumentList()
3840 return diagnoseArityMismatch(*this, Template, TemplateLoc, in CheckTemplateArgumentList()
3844 TemplateName Name = SubstDefaultTemplateArgument(*this, Template, in CheckTemplateArgumentList()
3859 InstantiatingTemplate Inst(*this, RAngleLoc, Template, *Param, Converted, in CheckTemplateArgumentList()
3865 if (CheckTemplateArgument(*Param, Arg, Template, TemplateLoc, in CheckTemplateArgumentList()
3894 return diagnoseArityMismatch(*this, Template, TemplateLoc, TemplateArgs); in CheckTemplateArgumentList()
5117 TemplateDecl *Template = Name.getAsTemplateDecl(); in CheckTemplateArgument() local
5118 if (!Template) { in CheckTemplateArgument()
5136 if (!isa<ClassTemplateDecl>(Template) && in CheckTemplateArgument()
5137 !isa<TemplateTemplateParmDecl>(Template) && in CheckTemplateArgument()
5138 !isa<TypeAliasTemplateDecl>(Template)) { in CheckTemplateArgument()
5139 assert(isa<FunctionTemplateDecl>(Template) && in CheckTemplateArgument()
5142 Diag(Template->getLocation(), diag::note_template_arg_refers_here_func) in CheckTemplateArgument()
5143 << Template; in CheckTemplateArgument()
5150 return !TemplateParameterListsAreEqual(Template->getTemplateParameters(), in CheckTemplateArgument()
5951 TemplateName Name = TemplateId.Template.get(); in ActOnClassTemplateSpecialization()
7778 TemplateName Template = TemplateIn.get(); in ActOnTypenameType() local
7779 if (DependentTemplateName *DTN = Template.getAsDependentTemplateName()) { in ActOnTypenameType()
7803 QualType T = CheckTemplateIdType(Template, TemplateNameLoc, TemplateArgs); in ActOnTypenameType()