Lines Matching refs:PrevDecl
5424 NamedDecl *PrevDecl = R.getRepresentativeDecl()->getUnderlyingDecl(); in CheckAnonMemberRedeclaration() local
5425 assert(PrevDecl && "Expected a non-null Decl"); in CheckAnonMemberRedeclaration()
5427 if (!SemaRef.isDeclInScope(PrevDecl, Owner, S)) in CheckAnonMemberRedeclaration()
5431 PrevDecl->isPlaceholderVar(SemaRef.getLangOpts()) && in CheckAnonMemberRedeclaration()
5440 SemaRef.Diag(PrevDecl->getLocation(), diag::note_previous_declaration); in CheckAnonMemberRedeclaration()
6926 isOutOfScopePreviousDeclaration(NamedDecl *PrevDecl, DeclContext *DC, in isOutOfScopePreviousDeclaration() argument
6928 if (!PrevDecl) in isOutOfScopePreviousDeclaration()
6931 if (!PrevDecl->hasLinkage()) in isOutOfScopePreviousDeclaration()
6946 DeclContext *PrevOuterContext = PrevDecl->getDeclContext(); in isOutOfScopePreviousDeclaration()
7587 NamedDecl *PrevDecl = *Previous.begin(); in ActOnVariableDeclarator() local
7588 bool SameDC = PrevDecl->getDeclContext()->getRedeclContext()->Equals( in ActOnVariableDeclarator()
7590 if (SameDC && isDeclInScope(PrevDecl, CurContext, S, false)) in ActOnVariableDeclarator()
11055 bool Sema::shouldLinkDependentDeclWithPrevious(Decl *D, Decl *PrevDecl) { in shouldLinkDependentDeclWithPrevious() argument
11076 auto *PrevVD = dyn_cast<ValueDecl>(PrevDecl); in shouldLinkDependentDeclWithPrevious()
15154 NamedDecl *PrevDecl = *R.begin(); in ActOnParamDeclarator() local
15155 if (R.isSingleResult() && PrevDecl->isTemplateParameter()) { in ActOnParamDeclarator()
15157 DiagnoseTemplateParameterShadow(D.getIdentifierLoc(), PrevDecl); in ActOnParamDeclarator()
15159 PrevDecl = nullptr; in ActOnParamDeclarator()
15161 if (PrevDecl && S->isDeclScope(PrevDecl)) { in ActOnParamDeclarator()
15163 Diag(PrevDecl->getLocation(), diag::note_previous_declaration); in ActOnParamDeclarator()
16994 Sema::NonTagKind Sema::getNonTagTypeDeclKind(const Decl *PrevDecl, in getNonTagTypeDeclKind() argument
16996 if (isa<TypedefDecl>(PrevDecl)) in getNonTagTypeDeclKind()
16998 else if (isa<TypeAliasDecl>(PrevDecl)) in getNonTagTypeDeclKind()
17000 else if (isa<ClassTemplateDecl>(PrevDecl)) in getNonTagTypeDeclKind()
17002 else if (isa<TypeAliasTemplateDecl>(PrevDecl)) in getNonTagTypeDeclKind()
17004 else if (isa<TemplateTemplateParmDecl>(PrevDecl)) in getNonTagTypeDeclKind()
17631 NamedDecl *PrevDecl = Previous.getFoundDecl(); in ActOnTag() local
17643 if (TypedefNameDecl *TD = dyn_cast<TypedefNameDecl>(PrevDecl)) { in ActOnTag()
17649 PrevDecl = Tag; in ActOnTag()
17662 auto *OldTag = dyn_cast<TagDecl>(PrevDecl); in ActOnTag()
17678 if (TagDecl *PrevTagDecl = dyn_cast<TagDecl>(PrevDecl)) { in ActOnTag()
17737 if (TUK == TUK_Declaration && PrevDecl->isCXXClassMember() && in ActOnTag()
17738 S->isDeclScope(PrevDecl)) { in ActOnTag()
17753 PrevDecl->getOwningModule() != getCurrentModule()) && in ActOnTag()
17763 ->Equals(PrevDecl->getDeclContext()->getRedeclContext())) in ActOnTag()
17882 NonTagKind NTK = getNonTagTypeDeclKind(PrevDecl, Kind); in ActOnTag()
17884 << PrevDecl << NTK << llvm::to_underlying(Kind); in ActOnTag()
17885 Diag(PrevDecl->getLocation(), diag::note_declared_at); in ActOnTag()
17895 NonTagKind NTK = getNonTagTypeDeclKind(PrevDecl, Kind); in ActOnTag()
17897 Diag(PrevDecl->getLocation(), diag::note_previous_decl) << PrevDecl; in ActOnTag()
17902 } else if (TypedefNameDecl *TND = dyn_cast<TypedefNameDecl>(PrevDecl)) { in ActOnTag()
17904 if (isa<TypeAliasDecl>(PrevDecl)) Kind = 1; in ActOnTag()
17907 Diag(PrevDecl->getLocation(), diag::note_previous_decl) << PrevDecl; in ActOnTag()
17915 notePreviousDefinition(PrevDecl, NameLoc); in ActOnTag()
17928 TagDecl *PrevDecl = nullptr; in ActOnTag()
17930 PrevDecl = cast<TagDecl>(Previous.getFoundDecl()); in ActOnTag()
17946 cast_or_null<EnumDecl>(PrevDecl), ScopedEnum, in ActOnTag()
17959 else if (PrevDecl && (Def = cast<EnumDecl>(PrevDecl)->getDefinition())) { in ActOnTag()
17993 cast_or_null<CXXRecordDecl>(PrevDecl)); in ActOnTag()
17999 cast_or_null<RecordDecl>(PrevDecl)); in ActOnTag()
18087 } else if (!PrevDecl) { in ActOnTag()
18108 SetMemberAccessSpecifier(New, PrevDecl, AS); in ActOnTag()
18110 if (PrevDecl) in ActOnTag()
18111 CheckRedeclarationInModule(New, PrevDecl); in ActOnTag()
18123 if (PrevDecl) in ActOnTag()
18124 New->setAccess(PrevDecl->getAccess()); in ActOnTag()
18145 if (PrevDecl) in ActOnTag()
18146 mergeDeclAttributes(New, PrevDecl); in ActOnTag()
18477 NamedDecl *PrevDecl = nullptr; in HandleField() local
18484 PrevDecl = Previous.getAsSingle<NamedDecl>(); in HandleField()
18488 PrevDecl = Previous.getRepresentativeDecl(); in HandleField()
18498 if (PrevDecl && PrevDecl->isTemplateParameter()) { in HandleField()
18500 DiagnoseTemplateParameterShadow(D.getIdentifierLoc(), PrevDecl); in HandleField()
18502 PrevDecl = nullptr; in HandleField()
18505 if (PrevDecl && !isDeclInScope(PrevDecl, Record, S)) in HandleField()
18506 PrevDecl = nullptr; in HandleField()
18513 TSSL, AS, PrevDecl, &D); in HandleField()
18521 if (NewFD->isInvalidDecl() && PrevDecl) { in HandleField()
18548 AccessSpecifier AS, NamedDecl *PrevDecl, in CheckFieldDecl() argument
18669 if (PrevDecl && !isa<TagDecl>(PrevDecl) && in CheckFieldDecl()
18670 !PrevDecl->isPlaceholderVar(getLangOpts())) { in CheckFieldDecl()
18672 Diag(PrevDecl->getLocation(), diag::note_previous_declaration); in CheckFieldDecl()
18880 NamedDecl *PrevDecl = LookupSingleName(S, II, Loc, LookupMemberName, in ActOnIvar() local
18882 if (PrevDecl && isDeclInScope(PrevDecl, EnclosingContext, S) in ActOnIvar()
18883 && !isa<TagDecl>(PrevDecl)) { in ActOnIvar()
18885 Diag(PrevDecl->getLocation(), diag::note_previous_declaration); in ActOnIvar()
19895 NamedDecl *PrevDecl = LookupSingleName(S, II, IILoc, LookupOrdinaryName, in shouldSkipAnonEnumBody() local
19897 auto *PrevECD = dyn_cast_or_null<EnumConstantDecl>(PrevDecl); in shouldSkipAnonEnumBody()
19928 NamedDecl *PrevDecl = R.getAsSingle<NamedDecl>(); in ActOnEnumConstant() local
19930 if (PrevDecl && PrevDecl->isTemplateParameter()) { in ActOnEnumConstant()
19932 DiagnoseTemplateParameterShadow(IdLoc, PrevDecl); in ActOnEnumConstant()
19934 PrevDecl = nullptr; in ActOnEnumConstant()
19951 if (PrevDecl) { in ActOnEnumConstant()
19952 if (!TheEnumDecl->isScoped() && isa<ValueDecl>(PrevDecl)) { in ActOnEnumConstant()
19954 CheckShadow(New, PrevDecl, R); in ActOnEnumConstant()
19959 assert((getLangOpts().CPlusPlus || !isa<TagDecl>(PrevDecl)) && in ActOnEnumConstant()
19961 if (!isa<TagDecl>(PrevDecl) && isDeclInScope(PrevDecl, CurContext, S)) { in ActOnEnumConstant()
19962 if (isa<EnumConstantDecl>(PrevDecl)) in ActOnEnumConstant()
19966 notePreviousDefinition(PrevDecl, IdLoc); in ActOnEnumConstant()
20425 NamedDecl *PrevDecl = LookupSingleName(TUScope, Name, NameLoc, in ActOnPragmaRedefineExtname() local
20436 if (PrevDecl && (isa<FunctionDecl>(PrevDecl) || isa<VarDecl>(PrevDecl))) { in ActOnPragmaRedefineExtname()
20437 if (isDeclExternC(PrevDecl)) in ActOnPragmaRedefineExtname()
20438 PrevDecl->addAttr(Attr); in ActOnPragmaRedefineExtname()
20440 Diag(PrevDecl->getLocation(), diag::warn_redefine_extname_not_applied) in ActOnPragmaRedefineExtname()
20441 << /*Variable*/(isa<FunctionDecl>(PrevDecl) ? 0 : 1) << PrevDecl; in ActOnPragmaRedefineExtname()
20450 Decl *PrevDecl = LookupSingleName(TUScope, Name, NameLoc, LookupOrdinaryName); in ActOnPragmaWeakID() local
20452 if (PrevDecl) { in ActOnPragmaWeakID()
20453 PrevDecl->addAttr(WeakAttr::CreateImplicit(Context, PragmaLoc)); in ActOnPragmaWeakID()
20464 Decl *PrevDecl = LookupSingleName(TUScope, AliasName, AliasNameLoc, in ActOnPragmaWeakAlias() local
20468 if (PrevDecl && (isa<FunctionDecl>(PrevDecl) || isa<VarDecl>(PrevDecl))) { in ActOnPragmaWeakAlias()
20469 if (!PrevDecl->hasAttr<AliasAttr>()) in ActOnPragmaWeakAlias()
20470 if (NamedDecl *ND = dyn_cast<NamedDecl>(PrevDecl)) in ActOnPragmaWeakAlias()