Lines Matching refs:PrevDecl
888 void Sema::DiagnoseTemplateParameterShadow(SourceLocation Loc, Decl *PrevDecl) { in DiagnoseTemplateParameterShadow() argument
889 assert(PrevDecl->isTemplateParameter() && "Not a template parameter"); in DiagnoseTemplateParameterShadow()
898 Diag(Loc, DiagId) << cast<NamedDecl>(PrevDecl)->getDeclName(); in DiagnoseTemplateParameterShadow()
899 Diag(PrevDecl->getLocation(), diag::note_template_param_here); in DiagnoseTemplateParameterShadow()
970 NamedDecl *PrevDecl = SemaRef.LookupSingleName( in maybeDiagnoseTemplateParameterShadow() local
972 if (PrevDecl && PrevDecl->isTemplateParameter()) in maybeDiagnoseTemplateParameterShadow()
973 SemaRef.DiagnoseTemplateParameterShadow(Loc, PrevDecl); in maybeDiagnoseTemplateParameterShadow()
1890 NamedDecl *PrevDecl = nullptr; in CheckClassTemplate() local
1892 PrevDecl = (*Previous.begin())->getUnderlyingDecl(); in CheckClassTemplate()
1894 if (PrevDecl && PrevDecl->isTemplateParameter()) { in CheckClassTemplate()
1896 DiagnoseTemplateParameterShadow(NameLoc, PrevDecl); in CheckClassTemplate()
1898 PrevDecl = nullptr; in CheckClassTemplate()
1904 dyn_cast_or_null<ClassTemplateDecl>(PrevDecl); in CheckClassTemplate()
1909 if (!PrevClassTemplate && PrevDecl && isa<CXXRecordDecl>(PrevDecl) && in CheckClassTemplate()
1910 cast<CXXRecordDecl>(PrevDecl)->isInjectedClassName()) { in CheckClassTemplate()
1911 PrevDecl = cast<CXXRecordDecl>(PrevDecl->getDeclContext()); in CheckClassTemplate()
1913 = cast<CXXRecordDecl>(PrevDecl)->getDescribedClassTemplate(); in CheckClassTemplate()
1914 if (!PrevClassTemplate && isa<ClassTemplateSpecializationDecl>(PrevDecl)) { in CheckClassTemplate()
1916 = cast<ClassTemplateSpecializationDecl>(PrevDecl) in CheckClassTemplate()
1932 if (PrevDecl && in CheckClassTemplate()
1933 (OutermostContext->Equals(PrevDecl->getDeclContext()) || in CheckClassTemplate()
1934 OutermostContext->Encloses(PrevDecl->getDeclContext()))) { in CheckClassTemplate()
1935 SemanticContext = PrevDecl->getDeclContext(); in CheckClassTemplate()
1940 PrevDecl = PrevClassTemplate = nullptr; in CheckClassTemplate()
1955 PrevDecl = (*Previous.begin())->getUnderlyingDecl(); in CheckClassTemplate()
1958 } else if (PrevDecl && in CheckClassTemplate()
1961 PrevDecl = PrevClassTemplate = nullptr; in CheckClassTemplate()
1964 PrevDecl ? Previous.getRepresentativeDecl() : nullptr)) { in CheckClassTemplate()
1974 PrevDecl = PrevClassTemplate = nullptr; in CheckClassTemplate()
2027 } else if (PrevDecl) { in CheckClassTemplate()
2034 Diag(PrevDecl->getLocation(), diag::note_previous_definition); in CheckClassTemplate()
4280 NamedDecl *PrevDecl,
4549 VarTemplateSpecializationDecl *PrevDecl = nullptr; in ActOnVarTemplateSpecialization() local
4552 PrevDecl = VarTemplate->findPartialSpecialization( in ActOnVarTemplateSpecialization()
4555 PrevDecl = VarTemplate->findSpecialization(CanonicalConverted, InsertPos); in ActOnVarTemplateSpecialization()
4561 if (CheckTemplateSpecializationScope(*this, VarTemplate, PrevDecl, in ActOnVarTemplateSpecialization()
4566 if (PrevDecl && PrevDecl->getSpecializationKind() == TSK_Undeclared) { in ActOnVarTemplateSpecialization()
4571 Specialization = PrevDecl; in ActOnVarTemplateSpecialization()
4573 PrevDecl = nullptr; in ActOnVarTemplateSpecialization()
4577 cast_or_null<VarTemplatePartialSpecializationDecl>(PrevDecl); in ActOnVarTemplateSpecialization()
4602 if (!PrevDecl) in ActOnVarTemplateSpecialization()
4612 if (PrevDecl && PrevDecl->getPointOfInstantiation().isValid()) { in ActOnVarTemplateSpecialization()
4614 for (Decl *Prev = PrevDecl; Prev; Prev = Prev->getPreviousDecl()) { in ActOnVarTemplateSpecialization()
4627 Diag(PrevDecl->getPointOfInstantiation(), in ActOnVarTemplateSpecialization()
4629 << (PrevDecl->getTemplateSpecializationKind() != in ActOnVarTemplateSpecialization()
4646 if (PrevDecl) { in ActOnVarTemplateSpecialization()
4651 PrevSpec.addDecl(PrevDecl); in ActOnVarTemplateSpecialization()
8326 NamedDecl *PrevDecl, in CheckTemplateSpecializationScope() argument
8690 ClassTemplateSpecializationDecl *PrevDecl = nullptr; in ActOnClassTemplateSpecialization() local
8693 PrevDecl = ClassTemplate->findPartialSpecialization( in ActOnClassTemplateSpecialization()
8696 PrevDecl = ClassTemplate->findSpecialization(CanonicalConverted, InsertPos); in ActOnClassTemplateSpecialization()
8703 CheckTemplateSpecializationScope(*this, ClassTemplate, PrevDecl, in ActOnClassTemplateSpecialization()
8744 = cast_or_null<ClassTemplatePartialSpecializationDecl>(PrevDecl); in ActOnClassTemplateSpecialization()
8771 ClassTemplate, CanonicalConverted, PrevDecl); in ActOnClassTemplateSpecialization()
8778 if (!PrevDecl) in ActOnClassTemplateSpecialization()
8796 if (PrevDecl && PrevDecl->getPointOfInstantiation().isValid()) { in ActOnClassTemplateSpecialization()
8798 for (Decl *Prev = PrevDecl; Prev; Prev = Prev->getPreviousDecl()) { in ActOnClassTemplateSpecialization()
8811 Diag(PrevDecl->getPointOfInstantiation(), in ActOnClassTemplateSpecialization()
8813 << (PrevDecl->getTemplateSpecializationKind() in ActOnClassTemplateSpecialization()
9076 NamedDecl *PrevDecl, in CheckSpecializationInstantiationRedecl() argument
9104 PrevDecl, in CheckSpecializationInstantiationRedecl()
9123 for (Decl *Prev = PrevDecl; Prev; Prev = Prev->getPreviousDecl()) { in CheckSpecializationInstantiationRedecl()
9130 << PrevDecl; in CheckSpecializationInstantiationRedecl()
9171 Diag(DiagLocForExplicitInstantiation(PrevDecl, PrevPointOfInstantiation), in CheckSpecializationInstantiationRedecl()
9193 << PrevDecl; in CheckSpecializationInstantiationRedecl()
9194 Diag(PrevDecl->getLocation(), in CheckSpecializationInstantiationRedecl()
9208 for (Decl *Prev = PrevDecl; Prev; Prev = Prev->getPreviousDecl()) { in CheckSpecializationInstantiationRedecl()
9228 << PrevDecl; in CheckSpecializationInstantiationRedecl()
9229 Diag(DiagLocForExplicitInstantiation(PrevDecl, PrevPointOfInstantiation), in CheckSpecializationInstantiationRedecl()
9975 ClassTemplateSpecializationDecl *PrevDecl = in ActOnExplicitInstantiation() local
9979 = PrevDecl ? PrevDecl->getTemplateSpecializationKind() : TSK_Undeclared; in ActOnExplicitInstantiation()
9981 if (TSK == TSK_ExplicitInstantiationDefinition && PrevDecl != nullptr && in ActOnExplicitInstantiation()
10001 if (PrevDecl) { in ActOnExplicitInstantiation()
10003 PrevDecl, PrevDecl_TSK, in ActOnExplicitInstantiation()
10004 PrevDecl->getPointOfInstantiation(), in ActOnExplicitInstantiation()
10006 return PrevDecl; in ActOnExplicitInstantiation()
10018 Specialization = PrevDecl; in ActOnExplicitInstantiation()
10020 PrevDecl = nullptr; in ActOnExplicitInstantiation()
10035 ClassTemplate, CanonicalConverted, PrevDecl); in ActOnExplicitInstantiation()
10038 if (!HasNoEffect && !PrevDecl) { in ActOnExplicitInstantiation()
10150 PrevDecl->hasAttr<DLLExportAttr>()) { in ActOnExplicitInstantiation()
10228 CXXRecordDecl *PrevDecl in ActOnExplicitInstantiation() local
10230 if (!PrevDecl && Record->getDefinition()) in ActOnExplicitInstantiation()
10231 PrevDecl = Record; in ActOnExplicitInstantiation()
10232 if (PrevDecl) { in ActOnExplicitInstantiation()
10233 MemberSpecializationInfo *MSInfo = PrevDecl->getMemberSpecializationInfo(); in ActOnExplicitInstantiation()
10237 PrevDecl, in ActOnExplicitInstantiation()
10620 FunctionDecl *PrevDecl = Specialization->getPreviousDecl(); in ActOnExplicitInstantiation() local
10621 if (!PrevDecl && Specialization->isThisDeclarationADefinition()) in ActOnExplicitInstantiation()
10622 PrevDecl = Specialization; in ActOnExplicitInstantiation()
10624 if (PrevDecl) { in ActOnExplicitInstantiation()
10627 PrevDecl, in ActOnExplicitInstantiation()
10628 PrevDecl->getTemplateSpecializationKind(), in ActOnExplicitInstantiation()
10629 PrevDecl->getPointOfInstantiation(), in ActOnExplicitInstantiation()