Lines Matching refs:PrevDecl

887 void Sema::DiagnoseTemplateParameterShadow(SourceLocation Loc, Decl *PrevDecl) {  in DiagnoseTemplateParameterShadow()  argument
888 assert(PrevDecl->isTemplateParameter() && "Not a template parameter"); in DiagnoseTemplateParameterShadow()
897 Diag(Loc, DiagId) << cast<NamedDecl>(PrevDecl)->getDeclName(); in DiagnoseTemplateParameterShadow()
898 Diag(PrevDecl->getLocation(), diag::note_template_param_here); in DiagnoseTemplateParameterShadow()
969 NamedDecl *PrevDecl = SemaRef.LookupSingleName( in maybeDiagnoseTemplateParameterShadow() local
971 if (PrevDecl && PrevDecl->isTemplateParameter()) in maybeDiagnoseTemplateParameterShadow()
972 SemaRef.DiagnoseTemplateParameterShadow(Loc, PrevDecl); in maybeDiagnoseTemplateParameterShadow()
1796 NamedDecl *PrevDecl = nullptr; in CheckClassTemplate() local
1798 PrevDecl = (*Previous.begin())->getUnderlyingDecl(); in CheckClassTemplate()
1800 if (PrevDecl && PrevDecl->isTemplateParameter()) { in CheckClassTemplate()
1802 DiagnoseTemplateParameterShadow(NameLoc, PrevDecl); in CheckClassTemplate()
1804 PrevDecl = nullptr; in CheckClassTemplate()
1810 dyn_cast_or_null<ClassTemplateDecl>(PrevDecl); in CheckClassTemplate()
1815 if (!PrevClassTemplate && PrevDecl && isa<CXXRecordDecl>(PrevDecl) && in CheckClassTemplate()
1816 cast<CXXRecordDecl>(PrevDecl)->isInjectedClassName()) { in CheckClassTemplate()
1817 PrevDecl = cast<CXXRecordDecl>(PrevDecl->getDeclContext()); in CheckClassTemplate()
1819 = cast<CXXRecordDecl>(PrevDecl)->getDescribedClassTemplate(); in CheckClassTemplate()
1820 if (!PrevClassTemplate && isa<ClassTemplateSpecializationDecl>(PrevDecl)) { in CheckClassTemplate()
1822 = cast<ClassTemplateSpecializationDecl>(PrevDecl) in CheckClassTemplate()
1838 if (PrevDecl && in CheckClassTemplate()
1839 (OutermostContext->Equals(PrevDecl->getDeclContext()) || in CheckClassTemplate()
1840 OutermostContext->Encloses(PrevDecl->getDeclContext()))) { in CheckClassTemplate()
1841 SemanticContext = PrevDecl->getDeclContext(); in CheckClassTemplate()
1846 PrevDecl = PrevClassTemplate = nullptr; in CheckClassTemplate()
1861 PrevDecl = (*Previous.begin())->getUnderlyingDecl(); in CheckClassTemplate()
1864 } else if (PrevDecl && in CheckClassTemplate()
1867 PrevDecl = PrevClassTemplate = nullptr; in CheckClassTemplate()
1870 PrevDecl ? Previous.getRepresentativeDecl() : nullptr)) { in CheckClassTemplate()
1880 PrevDecl = PrevClassTemplate = nullptr; in CheckClassTemplate()
1933 } else if (PrevDecl) { in CheckClassTemplate()
1940 Diag(PrevDecl->getLocation(), diag::note_previous_definition); in CheckClassTemplate()
4163 NamedDecl *PrevDecl,
4431 VarTemplateSpecializationDecl *PrevDecl = nullptr; in ActOnVarTemplateSpecialization() local
4434 PrevDecl = VarTemplate->findPartialSpecialization(Converted, TemplateParams, in ActOnVarTemplateSpecialization()
4437 PrevDecl = VarTemplate->findSpecialization(Converted, InsertPos); in ActOnVarTemplateSpecialization()
4443 if (CheckTemplateSpecializationScope(*this, VarTemplate, PrevDecl, in ActOnVarTemplateSpecialization()
4448 if (PrevDecl && PrevDecl->getSpecializationKind() == TSK_Undeclared) { in ActOnVarTemplateSpecialization()
4453 Specialization = PrevDecl; in ActOnVarTemplateSpecialization()
4455 PrevDecl = nullptr; in ActOnVarTemplateSpecialization()
4459 cast_or_null<VarTemplatePartialSpecializationDecl>(PrevDecl); in ActOnVarTemplateSpecialization()
4484 if (!PrevDecl) in ActOnVarTemplateSpecialization()
4494 if (PrevDecl && PrevDecl->getPointOfInstantiation().isValid()) { in ActOnVarTemplateSpecialization()
4496 for (Decl *Prev = PrevDecl; Prev; Prev = Prev->getPreviousDecl()) { in ActOnVarTemplateSpecialization()
4509 Diag(PrevDecl->getPointOfInstantiation(), in ActOnVarTemplateSpecialization()
4511 << (PrevDecl->getTemplateSpecializationKind() != in ActOnVarTemplateSpecialization()
4528 if (PrevDecl) { in ActOnVarTemplateSpecialization()
4533 PrevSpec.addDecl(PrevDecl); in ActOnVarTemplateSpecialization()
8078 NamedDecl *PrevDecl, in CheckTemplateSpecializationScope() argument
8441 ClassTemplateSpecializationDecl *PrevDecl = nullptr; in ActOnClassTemplateSpecialization() local
8444 PrevDecl = ClassTemplate->findPartialSpecialization(Converted, in ActOnClassTemplateSpecialization()
8448 PrevDecl = ClassTemplate->findSpecialization(Converted, InsertPos); in ActOnClassTemplateSpecialization()
8455 CheckTemplateSpecializationScope(*this, ClassTemplate, PrevDecl, in ActOnClassTemplateSpecialization()
8496 = cast_or_null<ClassTemplatePartialSpecializationDecl>(PrevDecl); in ActOnClassTemplateSpecialization()
8532 PrevDecl); in ActOnClassTemplateSpecialization()
8539 if (!PrevDecl) in ActOnClassTemplateSpecialization()
8557 if (PrevDecl && PrevDecl->getPointOfInstantiation().isValid()) { in ActOnClassTemplateSpecialization()
8559 for (Decl *Prev = PrevDecl; Prev; Prev = Prev->getPreviousDecl()) { in ActOnClassTemplateSpecialization()
8572 Diag(PrevDecl->getPointOfInstantiation(), in ActOnClassTemplateSpecialization()
8574 << (PrevDecl->getTemplateSpecializationKind() in ActOnClassTemplateSpecialization()
8818 NamedDecl *PrevDecl, in CheckSpecializationInstantiationRedecl() argument
8845 StripImplicitInstantiation(PrevDecl); in CheckSpecializationInstantiationRedecl()
8863 for (Decl *Prev = PrevDecl; Prev; Prev = Prev->getPreviousDecl()) { in CheckSpecializationInstantiationRedecl()
8870 << PrevDecl; in CheckSpecializationInstantiationRedecl()
8911 Diag(DiagLocForExplicitInstantiation(PrevDecl, PrevPointOfInstantiation), in CheckSpecializationInstantiationRedecl()
8933 << PrevDecl; in CheckSpecializationInstantiationRedecl()
8934 Diag(PrevDecl->getLocation(), in CheckSpecializationInstantiationRedecl()
8948 for (Decl *Prev = PrevDecl; Prev; Prev = Prev->getPreviousDecl()) { in CheckSpecializationInstantiationRedecl()
8968 << PrevDecl; in CheckSpecializationInstantiationRedecl()
8969 Diag(DiagLocForExplicitInstantiation(PrevDecl, PrevPointOfInstantiation), in CheckSpecializationInstantiationRedecl()
9715 ClassTemplateSpecializationDecl *PrevDecl in ActOnExplicitInstantiation() local
9719 = PrevDecl ? PrevDecl->getTemplateSpecializationKind() : TSK_Undeclared; in ActOnExplicitInstantiation()
9721 if (TSK == TSK_ExplicitInstantiationDefinition && PrevDecl != nullptr && in ActOnExplicitInstantiation()
9741 if (PrevDecl) { in ActOnExplicitInstantiation()
9743 PrevDecl, PrevDecl_TSK, in ActOnExplicitInstantiation()
9744 PrevDecl->getPointOfInstantiation(), in ActOnExplicitInstantiation()
9746 return PrevDecl; in ActOnExplicitInstantiation()
9758 Specialization = PrevDecl; in ActOnExplicitInstantiation()
9760 PrevDecl = nullptr; in ActOnExplicitInstantiation()
9779 PrevDecl); in ActOnExplicitInstantiation()
9782 if (!HasNoEffect && !PrevDecl) { in ActOnExplicitInstantiation()
9894 PrevDecl->hasAttr<DLLExportAttr>()) { in ActOnExplicitInstantiation()
9974 CXXRecordDecl *PrevDecl in ActOnExplicitInstantiation() local
9976 if (!PrevDecl && Record->getDefinition()) in ActOnExplicitInstantiation()
9977 PrevDecl = Record; in ActOnExplicitInstantiation()
9978 if (PrevDecl) { in ActOnExplicitInstantiation()
9979 MemberSpecializationInfo *MSInfo = PrevDecl->getMemberSpecializationInfo(); in ActOnExplicitInstantiation()
9983 PrevDecl, in ActOnExplicitInstantiation()
10366 FunctionDecl *PrevDecl = Specialization->getPreviousDecl(); in ActOnExplicitInstantiation() local
10367 if (!PrevDecl && Specialization->isThisDeclarationADefinition()) in ActOnExplicitInstantiation()
10368 PrevDecl = Specialization; in ActOnExplicitInstantiation()
10370 if (PrevDecl) { in ActOnExplicitInstantiation()
10373 PrevDecl, in ActOnExplicitInstantiation()
10374 PrevDecl->getTemplateSpecializationKind(), in ActOnExplicitInstantiation()
10375 PrevDecl->getPointOfInstantiation(), in ActOnExplicitInstantiation()