Lines Matching refs:PrevDecl

4475   NamedDecl *PrevDecl = R.getRepresentativeDecl()->getUnderlyingDecl();  in CheckAnonMemberRedeclaration()  local
4476 assert(PrevDecl && "Expected a non-null Decl"); in CheckAnonMemberRedeclaration()
4478 if (!SemaRef.isDeclInScope(PrevDecl, Owner, S)) in CheckAnonMemberRedeclaration()
4483 SemaRef.Diag(PrevDecl->getLocation(), diag::note_previous_declaration); in CheckAnonMemberRedeclaration()
5827 isOutOfScopePreviousDeclaration(NamedDecl *PrevDecl, DeclContext *DC, in isOutOfScopePreviousDeclaration() argument
5829 if (!PrevDecl) in isOutOfScopePreviousDeclaration()
5832 if (!PrevDecl->hasLinkage()) in isOutOfScopePreviousDeclaration()
5847 DeclContext *PrevOuterContext = PrevDecl->getDeclContext(); in isOutOfScopePreviousDeclaration()
9343 bool Sema::shouldLinkDependentDeclWithPrevious(Decl *D, Decl *PrevDecl) { in shouldLinkDependentDeclWithPrevious() argument
9364 auto *PrevVD = dyn_cast<ValueDecl>(PrevDecl); in shouldLinkDependentDeclWithPrevious()
12416 NamedDecl *PrevDecl = R.getFoundDecl(); in ActOnParamDeclarator() local
12417 if (PrevDecl->isTemplateParameter()) { in ActOnParamDeclarator()
12419 DiagnoseTemplateParameterShadow(D.getIdentifierLoc(), PrevDecl); in ActOnParamDeclarator()
12421 PrevDecl = nullptr; in ActOnParamDeclarator()
12422 } else if (S->isDeclScope(PrevDecl)) { in ActOnParamDeclarator()
12424 Diag(PrevDecl->getLocation(), diag::note_previous_declaration); in ActOnParamDeclarator()
13799 Sema::NonTagKind Sema::getNonTagTypeDeclKind(const Decl *PrevDecl, in getNonTagTypeDeclKind() argument
13801 if (isa<TypedefDecl>(PrevDecl)) in getNonTagTypeDeclKind()
13803 else if (isa<TypeAliasDecl>(PrevDecl)) in getNonTagTypeDeclKind()
13805 else if (isa<ClassTemplateDecl>(PrevDecl)) in getNonTagTypeDeclKind()
13807 else if (isa<TypeAliasTemplateDecl>(PrevDecl)) in getNonTagTypeDeclKind()
13809 else if (isa<TemplateTemplateParmDecl>(PrevDecl)) in getNonTagTypeDeclKind()
14414 NamedDecl *PrevDecl = Previous.getFoundDecl(); in ActOnTag() local
14427 if (TypedefNameDecl *TD = dyn_cast<TypedefNameDecl>(PrevDecl)) { in ActOnTag()
14433 PrevDecl = Tag; in ActOnTag()
14446 auto *OldTag = dyn_cast<TagDecl>(PrevDecl); in ActOnTag()
14462 if (TagDecl *PrevTagDecl = dyn_cast<TagDecl>(PrevDecl)) { in ActOnTag()
14528 if (TUK == TUK_Declaration && PrevDecl->isCXXClassMember() && in ActOnTag()
14529 S->isDeclScope(PrevDecl)) { in ActOnTag()
14544 PrevDecl->getOwningModule() != getCurrentModule()) && in ActOnTag()
14554 ->Equals(PrevDecl->getDeclContext()->getRedeclContext())) in ActOnTag()
14673 NonTagKind NTK = getNonTagTypeDeclKind(PrevDecl, Kind); in ActOnTag()
14674 Diag(NameLoc, diag::err_tag_reference_non_tag) << PrevDecl << NTK in ActOnTag()
14676 Diag(PrevDecl->getLocation(), diag::note_declared_at); in ActOnTag()
14686 NonTagKind NTK = getNonTagTypeDeclKind(PrevDecl, Kind); in ActOnTag()
14688 Diag(PrevDecl->getLocation(), diag::note_previous_decl) << PrevDecl; in ActOnTag()
14693 } else if (TypedefNameDecl *TND = dyn_cast<TypedefNameDecl>(PrevDecl)) { in ActOnTag()
14695 if (isa<TypeAliasDecl>(PrevDecl)) Kind = 1; in ActOnTag()
14698 Diag(PrevDecl->getLocation(), diag::note_previous_decl) << PrevDecl; in ActOnTag()
14706 notePreviousDefinition(PrevDecl, NameLoc); in ActOnTag()
14719 TagDecl *PrevDecl = nullptr; in ActOnTag()
14721 PrevDecl = cast<TagDecl>(Previous.getFoundDecl()); in ActOnTag()
14737 cast_or_null<EnumDecl>(PrevDecl), ScopedEnum, in ActOnTag()
14751 else if (PrevDecl && (Def = cast<EnumDecl>(PrevDecl)->getDefinition())) { in ActOnTag()
14782 cast_or_null<CXXRecordDecl>(PrevDecl)); in ActOnTag()
14788 cast_or_null<RecordDecl>(PrevDecl)); in ActOnTag()
14872 } else if (!PrevDecl) { in ActOnTag()
14893 SetMemberAccessSpecifier(New, PrevDecl, AS); in ActOnTag()
14895 if (PrevDecl) in ActOnTag()
14896 CheckRedeclarationModuleOwnership(New, PrevDecl); in ActOnTag()
14908 if (PrevDecl) in ActOnTag()
14909 New->setAccess(PrevDecl->getAccess()); in ActOnTag()
14930 if (PrevDecl) in ActOnTag()
14931 mergeDeclAttributes(New, PrevDecl); in ActOnTag()
15232 NamedDecl *PrevDecl = nullptr; in HandleField() local
15239 PrevDecl = Previous.getAsSingle<NamedDecl>(); in HandleField()
15243 PrevDecl = Previous.getRepresentativeDecl(); in HandleField()
15253 if (PrevDecl && PrevDecl->isTemplateParameter()) { in HandleField()
15255 DiagnoseTemplateParameterShadow(D.getIdentifierLoc(), PrevDecl); in HandleField()
15257 PrevDecl = nullptr; in HandleField()
15260 if (PrevDecl && !isDeclInScope(PrevDecl, Record, S)) in HandleField()
15261 PrevDecl = nullptr; in HandleField()
15268 TSSL, AS, PrevDecl, &D); in HandleField()
15276 if (NewFD->isInvalidDecl() && PrevDecl) { in HandleField()
15303 AccessSpecifier AS, NamedDecl *PrevDecl, in CheckFieldDecl() argument
15441 if (PrevDecl && !isa<TagDecl>(PrevDecl)) { in CheckFieldDecl()
15443 Diag(PrevDecl->getLocation(), diag::note_previous_declaration); in CheckFieldDecl()
15646 NamedDecl *PrevDecl = LookupSingleName(S, II, Loc, LookupMemberName, in ActOnIvar() local
15648 if (PrevDecl && isDeclInScope(PrevDecl, EnclosingContext, S) in ActOnIvar()
15649 && !isa<TagDecl>(PrevDecl)) { in ActOnIvar()
15651 Diag(PrevDecl->getLocation(), diag::note_previous_declaration); in ActOnIvar()
16394 NamedDecl *PrevDecl = LookupSingleName(S, II, IILoc, LookupOrdinaryName, in shouldSkipAnonEnumBody() local
16396 auto *PrevECD = dyn_cast_or_null<EnumConstantDecl>(PrevDecl); in shouldSkipAnonEnumBody()
16427 NamedDecl *PrevDecl = R.getAsSingle<NamedDecl>(); in ActOnEnumConstant() local
16429 if (PrevDecl && PrevDecl->isTemplateParameter()) { in ActOnEnumConstant()
16431 DiagnoseTemplateParameterShadow(IdLoc, PrevDecl); in ActOnEnumConstant()
16433 PrevDecl = nullptr; in ActOnEnumConstant()
16450 if (PrevDecl) { in ActOnEnumConstant()
16451 if (!TheEnumDecl->isScoped() && isa<ValueDecl>(PrevDecl)) { in ActOnEnumConstant()
16453 CheckShadow(New, PrevDecl, R); in ActOnEnumConstant()
16458 assert((getLangOpts().CPlusPlus || !isa<TagDecl>(PrevDecl)) && in ActOnEnumConstant()
16460 if (!isa<TagDecl>(PrevDecl) && isDeclInScope(PrevDecl, CurContext, S)) { in ActOnEnumConstant()
16461 if (isa<EnumConstantDecl>(PrevDecl)) in ActOnEnumConstant()
16465 notePreviousDefinition(PrevDecl, IdLoc); in ActOnEnumConstant()
17299 NamedDecl *PrevDecl = LookupSingleName(TUScope, Name, NameLoc, in ActOnPragmaRedefineExtname() local
17308 if (PrevDecl && (isa<FunctionDecl>(PrevDecl) || isa<VarDecl>(PrevDecl))) { in ActOnPragmaRedefineExtname()
17309 if (isDeclExternC(PrevDecl)) in ActOnPragmaRedefineExtname()
17310 PrevDecl->addAttr(Attr); in ActOnPragmaRedefineExtname()
17312 Diag(PrevDecl->getLocation(), diag::warn_redefine_extname_not_applied) in ActOnPragmaRedefineExtname()
17313 << /*Variable*/(isa<FunctionDecl>(PrevDecl) ? 0 : 1) << PrevDecl; in ActOnPragmaRedefineExtname()
17322 Decl *PrevDecl = LookupSingleName(TUScope, Name, NameLoc, LookupOrdinaryName); in ActOnPragmaWeakID() local
17324 if (PrevDecl) { in ActOnPragmaWeakID()
17325 PrevDecl->addAttr(WeakAttr::CreateImplicit(Context, PragmaLoc)); in ActOnPragmaWeakID()
17338 Decl *PrevDecl = LookupSingleName(TUScope, AliasName, AliasNameLoc, in ActOnPragmaWeakAlias() local
17342 if (PrevDecl && (isa<FunctionDecl>(PrevDecl) || isa<VarDecl>(PrevDecl))) { in ActOnPragmaWeakAlias()
17343 if (!PrevDecl->hasAttr<AliasAttr>()) in ActOnPragmaWeakAlias()
17344 if (NamedDecl *ND = dyn_cast<NamedDecl>(PrevDecl)) in ActOnPragmaWeakAlias()