Lines Matching refs:Entity
163 AccessTarget(const AccessedEntity &Entity) in AccessTarget()
164 : AccessedEntity(Entity) { in AccessTarget()
1284 AccessTarget &Entity) { in DiagnoseBadAccess() argument
1285 const CXXRecordDecl *NamingClass = Entity.getNamingClass(); in DiagnoseBadAccess()
1286 const CXXRecordDecl *DeclaringClass = Entity.getDeclaringClass(); in DiagnoseBadAccess()
1287 NamedDecl *D = (Entity.isMemberAccess() ? Entity.getTargetDecl() : nullptr); in DiagnoseBadAccess()
1289 S.Diag(Loc, Entity.getDiag()) in DiagnoseBadAccess()
1290 << (Entity.getAccess() == AS_protected) in DiagnoseBadAccess()
1294 DiagnoseAccessPath(S, EC, Entity); in DiagnoseBadAccess()
1319 AccessTarget &Entity) { in IsMicrosoftUsingDeclarationAccessBug() argument
1321 dyn_cast<UsingShadowDecl>(Entity.getTargetDecl())) in IsMicrosoftUsingDeclarationAccessBug()
1323 const NamedDecl *OrigDecl = Entity.getTargetDecl()->getUnderlyingDecl(); in IsMicrosoftUsingDeclarationAccessBug()
1324 if (Entity.getTargetDecl()->getAccess() == AS_private && in IsMicrosoftUsingDeclarationAccessBug()
1340 AccessTarget &Entity) { in IsAccessible() argument
1342 const CXXRecordDecl *NamingClass = Entity.getEffectiveNamingClass(); in IsAccessible()
1344 AccessSpecifier UnprivilegedAccess = Entity.getAccess(); in IsAccessible()
1352 switch (HasAccess(S, EC, NamingClass, UnprivilegedAccess, Entity)) { in IsAccessible()
1368 AccessTarget::SavedInstanceContext _ = Entity.saveInstanceContext(); in IsAccessible()
1374 if (Entity.isMemberAccess()) { in IsAccessible()
1377 NamedDecl *Target = Entity.getTargetDecl(); in IsAccessible()
1378 const CXXRecordDecl *DeclaringClass = Entity.getDeclaringClass(); in IsAccessible()
1381 switch (HasAccess(S, EC, DeclaringClass, FinalAccess, Entity)) { in IsAccessible()
1389 Entity.suppressInstanceContext(); in IsAccessible()
1401 assert(Entity.getDeclaringClass() != NamingClass); in IsAccessible()
1405 CXXBasePath *Path = FindBestPath(S, EC, Entity, FinalAccess, Paths); in IsAccessible()
1419 const AccessTarget &Entity) { in DelayDependentAccess() argument
1425 Entity.isMemberAccess(), in DelayDependentAccess()
1426 Entity.getAccess(), in DelayDependentAccess()
1427 Entity.getTargetDecl(), in DelayDependentAccess()
1428 Entity.getNamingClass(), in DelayDependentAccess()
1429 Entity.getBaseObjectType(), in DelayDependentAccess()
1430 Entity.getDiag()); in DelayDependentAccess()
1437 AccessTarget &Entity) { in CheckEffectiveAccess() argument
1438 assert(Entity.getAccess() != AS_public && "called for public access!"); in CheckEffectiveAccess()
1440 switch (IsAccessible(S, EC, Entity)) { in CheckEffectiveAccess()
1442 DelayDependentAccess(S, EC, Loc, Entity); in CheckEffectiveAccess()
1447 IsMicrosoftUsingDeclarationAccessBug(S, Loc, Entity)) in CheckEffectiveAccess()
1449 if (!Entity.isQuiet()) in CheckEffectiveAccess()
1450 DiagnoseBadAccess(S, Loc, EC, Entity); in CheckEffectiveAccess()
1462 AccessTarget &Entity) { in CheckAccess() argument
1464 if (Entity.getAccess() == AS_public) in CheckAccess()
1479 S.DelayedDiagnostics.add(DelayedDiagnostic::makeAccess(Loc, Entity)); in CheckAccess()
1484 switch (CheckEffectiveAccess(S, EC, Loc, Entity)) { in CheckAccess()
1540 AccessTarget Entity(Context, in HandleDependentAccessCheck() local
1545 Entity.setDiag(DD.getDiagnostic()); in HandleDependentAccessCheck()
1546 CheckAccess(*this, Loc, Entity); in HandleDependentAccessCheck()
1548 AccessTarget Entity(Context, in HandleDependentAccessCheck() local
1553 Entity.setDiag(DD.getDiagnostic()); in HandleDependentAccessCheck()
1554 CheckAccess(*this, Loc, Entity); in HandleDependentAccessCheck()
1565 AccessTarget Entity(Context, AccessTarget::Member, E->getNamingClass(), in CheckUnresolvedLookupAccess() local
1567 Entity.setDiag(diag::err_access) << E->getSourceRange(); in CheckUnresolvedLookupAccess()
1569 return CheckAccess(*this, E->getNameLoc(), Entity); in CheckUnresolvedLookupAccess()
1584 AccessTarget Entity(Context, AccessTarget::Member, E->getNamingClass(), in CheckUnresolvedMemberAccess() local
1586 Entity.setDiag(diag::err_access) << E->getSourceRange(); in CheckUnresolvedMemberAccess()
1588 return CheckAccess(*this, E->getMemberLoc(), Entity); in CheckUnresolvedMemberAccess()
1602 AccessTarget Entity(Context, AccessTarget::Member, NamingClass, Found, in isMemberAccessibleForDeletion() local
1606 Entity.setDiag(Diag); in isMemberAccessibleForDeletion()
1608 switch (CheckAccess(*this, Loc, Entity)) { in isMemberAccessibleForDeletion()
1632 AccessTarget Entity(Context, AccessTarget::Member, NamingClass, in CheckDestructorAccess() local
1635 Entity.setDiag(PDiag); // TODO: avoid copy in CheckDestructorAccess()
1637 return CheckAccess(*this, Loc, Entity); in CheckDestructorAccess()
1644 const InitializedEntity &Entity, in CheckConstructorAccess() argument
1650 switch (Entity.getKind()) { in CheckConstructorAccess()
1660 PD << Entity.isInheritedVirtualBase() in CheckConstructorAccess()
1661 << Entity.getBaseSpecifier()->getType() << getSpecialMember(Constructor); in CheckConstructorAccess()
1666 const FieldDecl *Field = cast<FieldDecl>(Entity.getDecl()); in CheckConstructorAccess()
1673 StringRef VarName = Entity.getCapturedVarName(); in CheckConstructorAccess()
1675 PD << VarName << Entity.getType() << getSpecialMember(Constructor); in CheckConstructorAccess()
1681 return CheckConstructorAccess(UseLoc, Constructor, Found, Entity, PD); in CheckConstructorAccess()
1688 const InitializedEntity &Entity, in CheckConstructorAccess() argument
1704 if ((Entity.getKind() == InitializedEntity::EK_Base || in CheckConstructorAccess()
1705 Entity.getKind() == InitializedEntity::EK_Delegating) && in CheckConstructorAccess()
1706 !Entity.getParent()) { in CheckConstructorAccess()
1737 AccessTarget Entity(Context, AccessTarget::Member, NamingClass, Found, in CheckAllocationAccess() local
1740 Entity.setDiag(diag::err_access) in CheckAllocationAccess()
1743 return CheckAccess(*this, OpLoc, Entity); in CheckAllocationAccess()
1755 AccessTarget Entity(Context, AccessTarget::Member, NamingClass, in CheckMemberAccess() local
1758 return CheckAccess(*this, UseLoc, Entity); in CheckMemberAccess()
1770 AccessTarget Entity(Context, AccessTarget::Member, DecomposedClass, Field, in CheckStructuredBindingMemberAccess() local
1772 Entity.setDiag(diag::err_decomp_decl_inaccessible_field); in CheckStructuredBindingMemberAccess()
1774 return CheckAccess(*this, UseLoc, Entity); in CheckStructuredBindingMemberAccess()
1787 AccessTarget Entity(Context, AccessTarget::Member, NamingClass, Found, in CheckMemberOperatorAccess() local
1789 Entity.setDiag(diag::err_access) << ObjectExpr->getSourceRange() << Range; in CheckMemberOperatorAccess()
1791 return CheckAccess(*this, OpLoc, Entity); in CheckMemberOperatorAccess()
1860 AccessTarget Entity(Context, AccessTarget::Member, NamingClass, Found, in CheckAddressOfMemberAccess() local
1862 Entity.setDiag(diag::err_access) in CheckAddressOfMemberAccess()
1865 return CheckAccess(*this, Ovl->getNameLoc(), Entity); in CheckAddressOfMemberAccess()
1891 AccessTarget Entity(Context, AccessTarget::Base, BaseD, DerivedD, in CheckBaseClassAccess() local
1894 Entity.setDiag(DiagID) << Derived << Base; in CheckBaseClassAccess()
1898 AccessLoc, Entity)) { in CheckBaseClassAccess()
1905 return CheckAccess(*this, AccessLoc, Entity); in CheckBaseClassAccess()
1916 AccessTarget Entity(Context, AccessedEntity::Member, in CheckLookupAccess() local
1919 Entity.setDiag(diag::err_access); in CheckLookupAccess()
1920 CheckAccess(*this, R.getNameLoc(), Entity); in CheckLookupAccess()
1952 AccessTarget Entity(Context, AccessedEntity::Member, NamingClass, in IsSimplyAccessible() local
1955 return ::IsAccessible(*this, EC, Entity) != ::AR_inaccessible; in IsSimplyAccessible()