Lines Matching defs:PatternDecl

4667                                            const FunctionDecl *PatternDecl,
4671 for (auto *decl : PatternDecl->decls()) {
4695 FunctionDecl *Function, const FunctionDecl *PatternDecl,
4699 for (unsigned I = 0, N = PatternDecl->getNumParams(); I != N; ++I) {
4700 const ParmVarDecl *PatternParam = PatternDecl->getParamDecl(I);
4712 if (!PatternDecl->getType()->isDependentType()) {
4736 if (!PatternDecl->getType()->isDependentType()) {
5043 const FunctionDecl *PatternDecl = Function->getTemplateInstantiationPattern();
5044 assert(PatternDecl && "instantiating a non-template");
5046 const FunctionDecl *PatternDef = PatternDecl->getDefinition();
5050 PatternDecl = PatternDef;
5059 PatternDecl, PatternDef, TSK,
5083 !getSourceManager().isInSystemHeader(PatternDecl->getBeginLoc())) {
5086 Diag(PatternDecl->getLocation(), diag::note_forward_template_decl);
5097 if (PatternDecl->isLateTemplateParsed() &&
5129 if (!Pattern && PatternDecl->isLateTemplateParsed() &&
5132 if (PatternDecl->isFromASTFile())
5135 auto LPTIter = LateParsedTemplateMap.find(PatternDecl);
5139 Pattern = PatternDecl->getBody(PatternDecl);
5140 updateAttrsForLateParsedTemplate(PatternDecl, Function);
5144 assert((Pattern || PatternDecl->isDefaulted() ||
5145 PatternDecl->hasSkippedBody()) &&
5154 !PatternDecl->isInlined() &&
5155 !PatternDecl->getReturnType()->getContainedAutoType())
5158 if (PatternDecl->isInlined()) {
5180 Function->setLocation(PatternDecl->getLocation());
5181 Function->setInnerLocStart(PatternDecl->getInnerLocStart());
5182 Function->setRangeEnd(PatternDecl->getEndLoc());
5183 Function->setDeclarationNameLoc(PatternDecl->getNameInfo().getInfo());
5210 // PatternDecl context, in which case parameters could still be pointing
5213 assert(PatternDecl->isDefaulted() &&
5215 auto PatternSM = getDefaultedFunctionKind(PatternDecl).asSpecialMember();
5224 dyn_cast<CXXRecordDecl>(PatternDecl->getDeclContext());
5276 if (PatternDecl->isDefaulted()) {
5278 SetDeclDefaulted(Function, PatternDecl->getLocation());
5299 Function, DC, /*Final=*/false, Innermost, false, PatternDecl);
5305 SubstQualifier(*this, PatternDecl, Function, TemplateArgs);
5317 if (addInstantiatedParametersToScope(Function, PatternDecl, Scope,
5322 if (PatternDecl->hasSkippedBody()) {
5328 InstantiateMemInitializers(Ctor, cast<CXXConstructorDecl>(PatternDecl),
5349 PerformDependentDiagnostics(PatternDecl, TemplateArgs);
5418 VarTemplateSpecializationDecl *VarSpec, VarDecl *PatternDecl,
5420 assert(PatternDecl->isThisDeclarationADefinition() &&
5425 SubstType(PatternDecl->getTypeSourceInfo(), TemplateArgs,
5426 PatternDecl->getTypeSpecStartLoc(), PatternDecl->getDeclName());
5437 InstantiateVariableInitializer(VarSpec, PatternDecl, TemplateArgs);
5660 VarDecl *PatternDecl = Var->getTemplateInstantiationPattern();
5661 assert(PatternDecl && "no pattern for templated variable");
5676 if (PatternDecl->isStaticDataMember() &&
5677 (PatternDecl = PatternDecl->getFirstDecl())->hasInit() &&
5702 InstantiateVariableInitializer(Var, PatternDecl, TemplateArgs);
5712 assert(Var->isStaticDataMember() && PatternDecl->isStaticDataMember() &&
5716 VarDecl *Def = PatternDecl->getDefinition(getASTContext());
5729 !getSourceManager().isInSystemHeader(PatternDecl->getBeginLoc())) {
5732 Diag(PatternDecl->getLocation(), diag::note_forward_template_decl);
5745 PatternDecl, Def, TSK,