Lines Matching defs:Previous
296 Decl *Previous);
300 Redeclarable<DeclT> *D, Decl *Previous,
303 static void attachPreviousDecl(ASTReader &Reader, Decl *D, Decl *Previous,
3383 auto &Previous = Reader.AnonymousDeclarationsForMerging[CanonDC];
3384 if (Index < Previous.size() && Previous[Index])
3385 return Previous[Index];
3392 if (Previous.size() == Number)
3393 Previous.push_back(cast<NamedDecl>(ND->getCanonicalDecl()));
3395 Previous[Number] = cast<NamedDecl>(ND->getCanonicalDecl());
3399 return Index < Previous.size() ? Previous[Index] : nullptr;
3407 auto &Previous = Reader.AnonymousDeclarationsForMerging[CanonDC];
3408 if (Index >= Previous.size())
3409 Previous.resize(Index + 1);
3410 if (!Previous[Index])
3411 Previous[Index] = D;
3538 Decl *Previous) {
3541 const auto *IA = Previous->getAttr<MSInheritanceAttr>();
3549 const auto *AA = Previous->getAttr<AvailabilityAttr>();
3560 Decl *Previous, Decl *Canon) {
3561 D->RedeclLink.setPrevious(cast<DeclT>(Previous));
3562 D->First = cast<DeclT>(Previous)->First;
3570 Decl *Previous, Decl *Canon) {
3572 auto *PrevVD = cast<VarDecl>(Previous);
3598 Decl *Previous, Decl *Canon) {
3600 auto *PrevFD = cast<FunctionDecl>(Previous);
3692 Decl *Previous) {
3693 Module *M = Previous->getOwningModule();
3701 if (Previous->isImplicit())
3707 if (!isa<VarDecl, FunctionDecl, TagDecl, RedeclarableTemplateDecl>(Previous))
3715 if (auto *VTSD = dyn_cast<VarTemplateSpecializationDecl>(Previous);
3718 if (auto *CTSD = dyn_cast<ClassTemplateSpecializationDecl>(Previous);
3721 if (auto *Func = dyn_cast<FunctionDecl>(Previous))
3730 Reader.Diag(Previous->getLocation(),
3732 << cast<NamedDecl>(Previous) << M->Name;
3737 Decl *Previous, Decl *Canon) {
3738 assert(D && Previous);
3744 attachPreviousDeclImpl(Reader, cast<TYPE##Decl>(D), Previous, Canon); \
3749 checkMultipleDefinitionInNamedModules(Reader, D, Previous);
3757 Previous->IdentifierNamespace &
3764 cast<TemplateDecl>(Previous), TD);
3770 mergeInheritableAttributes(Reader, D, Previous);