Lines Matching refs:Member
36 /// SetMemberAccessSpecifier - Set the access specifier of a member.
37 /// Returns true on error (when the previous member decl access specifier
38 /// is different from the new member decl access specifier).
48 // C++ [class.access.spec]p3: When a member is redeclared its access
88 // A nested class is a member and as such has the same access
89 // rights as any other member.
91 // A member of a class can also access all the names to which
92 // the class has access. A local class of a member function
93 // may access the same names that the member function itself
96 // Technically it says nothing about the local classes of non-member
160 : AccessedEntity(Context.getDiagAllocator(), Member, NamingClass,
601 /// to a protected instance member.
637 /// along the current path such that a notional public member of
651 // If this is private inheritance, then a public member of the
693 /// and with the additional restriction that a protected member of
698 /// Instead of saying that a notional protected member of NamingClass
701 /// possibility that the target (which is not necessarily a member
771 // [class.access] is applied when a non-static data member or
772 // non-static member function is a protected member of its naming
773 // class. As described earlier, access to a protected member is
774 // granted because the reference occurs in a friend or member of
775 // some class C. If the access is to form a pointer to member,
787 // If it's not an instance member, these restrictions don't apply.
790 // If it's an instance member, use the pointer-to-member rule
794 // Emulate a MSVC bug where the creation of pointer-to-member
795 // to protected member of base class is allowed but only from
796 // static member functions.
802 // where you can have an instance member that's neither in a
803 // pointer-to-member expression nor in a member access: when
805 // implicit member. Pending clarification, we just apply the
808 // protected-member restriction when we retroactively convert
840 // access if the access occurs in a friend or member of some class P
842 // access in P. The 'member' aspect is easy to handle because P
879 /// A member m is accessible at the point R when named in class N if
880 /// [M1] m as a member of N is public, or
881 /// [M2] m as a member of N is private, and R occurs in a member or
883 /// [M3] m as a member of N is protected, and R occurs in a member or
884 /// friend of class N, or in a member or friend of a class P
885 /// derived from N, where m as a member of P is public, private,
892 /// [B1] an invented public member of B would be a public member of N, or
893 /// [B2] R occurs in a member or friend of class N, and an invented public
894 /// member of B would be a private or protected member of N, or
895 /// [B3] R occurs in a member or friend of a class P derived from N, and an
896 /// invented public member of B would be a private or protected member
904 /// First, we note that M1-4 are equivalent to B1-4 if the member is
906 /// access equivalent to the member's access. Therefore we need only
965 // If the declaration is a private member of a base class, there
1019 /// access might be denied because of the protected member access
1351 // We lower member accesses to base accesses by pretending that the
1352 // member is a base class of its declaring class.
1368 // member with no instance context.
1519 AccessTarget::Member,
1543 AccessTarget Entity(Context, AccessTarget::Member, E->getNamingClass(),
1550 /// Perform access-control checking on a previously-unresolved member
1551 /// access which has now been resolved to a member.
1562 AccessTarget Entity(Context, AccessTarget::Member, E->getNamingClass(),
1569 /// Is the given special member function accessible for the purposes of
1570 /// deciding whether to define a special member function as deleted?
1577 AccessTarget entity(Context, AccessTarget::Member, decl->getParent(),
1607 AccessTarget Entity(Context, AccessTarget::Member, NamingClass,
1680 AccessTarget AccessEntity(Context, AccessTarget::Member, NamingClass,
1699 AccessTarget Entity(Context, AccessTarget::Member, NamingClass, Found,
1708 /// \brief Checks access to a member.
1717 AccessTarget Entity(Context, AccessTarget::Member, NamingClass,
1723 /// Checks access to an overloaded member operator, including
1736 AccessTarget Entity(Context, AccessTarget::Member, NamingClass, Found,
1758 AccessTarget entity(Context, AccessTarget::Member,
1787 AccessTarget Entity(Context, AccessTarget::Member, NamingClass, Found,
1843 AccessTarget Entity(Context, AccessedEntity::Member,
1853 /// specifiers into account, but no member access expressions and such.
1864 AccessTarget Entity(Context, AccessedEntity::Member, Class,