• Home
  • Raw
  • Download

Lines Matching refs:EC

402                                   const EffectiveContext &EC,  in MatchesFriend()  argument
404 if (EC.includesClass(Friend)) in MatchesFriend()
407 if (EC.isDependent()) { in MatchesFriend()
412 I = EC.Records.begin(), E = EC.Records.end(); I != E; ++I) { in MatchesFriend()
424 const EffectiveContext &EC, in MatchesFriend() argument
427 return MatchesFriend(S, EC, cast<CXXRecordDecl>(RT->getDecl())); in MatchesFriend()
439 const EffectiveContext &EC, in MatchesFriend() argument
446 I = EC.Records.begin(), E = EC.Records.end(); I != E; ++I) { in MatchesFriend()
468 if (!EC.isDependent()) in MatchesFriend()
492 const EffectiveContext &EC, in MatchesFriend() argument
497 I = EC.Functions.begin(), E = EC.Functions.end(); I != E; ++I) { in MatchesFriend()
501 if (EC.isDependent() && MightInstantiateTo(S, *I, Friend)) in MatchesFriend()
511 const EffectiveContext &EC, in MatchesFriend() argument
513 if (EC.Functions.empty()) return AR_inaccessible; in MatchesFriend()
518 I = EC.Functions.begin(), E = EC.Functions.end(); I != E; ++I) { in MatchesFriend()
531 if (EC.isDependent() && MightInstantiateTo(S, FTD, Friend)) in MatchesFriend()
541 const EffectiveContext &EC, in MatchesFriend() argument
549 return MatchesFriend(S, EC, T->getType()->getCanonicalTypeUnqualified()); in MatchesFriend()
557 return MatchesFriend(S, EC, cast<ClassTemplateDecl>(Friend)); in MatchesFriend()
560 return MatchesFriend(S, EC, cast<FunctionTemplateDecl>(Friend)); in MatchesFriend()
563 return MatchesFriend(S, EC, cast<CXXRecordDecl>(Friend)); in MatchesFriend()
566 return MatchesFriend(S, EC, cast<FunctionDecl>(Friend)); in MatchesFriend()
570 const EffectiveContext &EC, in GetFriendKind() argument
576 switch (MatchesFriend(S, EC, Friend)) { in GetFriendKind()
599 const EffectiveContext &EC; member
607 ProtectedFriendContext(Sema &S, const EffectiveContext &EC, in ProtectedFriendContext()
610 : S(S), EC(EC), NamingClass(NamingClass), in ProtectedFriendContext()
620 switch (GetFriendKind(S, EC, CurPath[I])) { in checkFriendshipAlongPath()
710 static AccessResult GetProtectedFriendKind(Sema &S, const EffectiveContext &EC, in GetProtectedFriendKind() argument
720 if (!InstanceContext) return GetFriendKind(S, EC, NamingClass); in GetProtectedFriendKind()
722 ProtectedFriendContext PRC(S, EC, InstanceContext, NamingClass); in GetProtectedFriendKind()
729 const EffectiveContext &EC, in HasAccess() argument
742 I = EC.Records.begin(), E = EC.Records.end(); I != E; ++I) { in HasAccess()
752 if (EC.isDependent() && MightInstantiateTo(ECRecord, NamingClass)) in HasAccess()
792 if (S.getLangOpts().MSVCCompat && !EC.Functions.empty()) in HasAccess()
793 if (CXXMethodDecl* MD = dyn_cast<CXXMethodDecl>(EC.Functions.front())) in HasAccess()
852 switch (GetProtectedFriendKind(S, EC, InstanceContext, NamingClass)) { in HasAccess()
860 switch (GetFriendKind(S, EC, NamingClass)) { in HasAccess()
927 const EffectiveContext &EC, in FindBestPath() argument
973 switch (HasAccess(S, EC, NC, PathAccess, Target)) { in FindBestPath()
1018 static bool TryDiagnoseProtectedAccess(Sema &S, const EffectiveContext &EC, in TryDiagnoseProtectedAccess() argument
1029 I = EC.Records.begin(), E = EC.Records.end(); I != E; ++I) { in TryDiagnoseProtectedAccess()
1094 const EffectiveContext &EC, in diagnoseBadDirectAccess() argument
1100 TryDiagnoseProtectedAccess(S, EC, entity)) in diagnoseBadDirectAccess()
1151 const EffectiveContext &EC, in DiagnoseAccessPath() argument
1168 switch (HasAccess(S, EC, declaringClass, accessSoFar, entity)) { in DiagnoseAccessPath()
1179 return diagnoseBadDirectAccess(S, EC, entity); in DiagnoseAccessPath()
1188 CXXBasePath &path = *FindBestPath(S, EC, entity, accessSoFar, paths); in DiagnoseAccessPath()
1211 switch (HasAccess(S, EC, derivingClass, accessSoFar, entity)) { in DiagnoseAccessPath()
1234 return diagnoseBadDirectAccess(S, EC, entity); in DiagnoseAccessPath()
1260 const EffectiveContext &EC, in DiagnoseBadAccess() argument
1271 DiagnoseAccessPath(S, EC, Entity); in DiagnoseBadAccess()
1315 const EffectiveContext &EC, in IsAccessible() argument
1328 switch (HasAccess(S, EC, NamingClass, UnprivilegedAccess, Entity)) { in IsAccessible()
1357 switch (HasAccess(S, EC, DeclaringClass, FinalAccess, Entity)) { in IsAccessible()
1381 CXXBasePath *Path = FindBestPath(S, EC, Entity, FinalAccess, Paths); in IsAccessible()
1393 const EffectiveContext &EC, in DelayDependentAccess() argument
1396 assert(EC.isDependent() && "delaying non-dependent access"); in DelayDependentAccess()
1397 DeclContext *DC = EC.getInnerContext(); in DelayDependentAccess()
1411 const EffectiveContext &EC, in CheckEffectiveAccess() argument
1416 switch (IsAccessible(S, EC, Entity)) { in CheckEffectiveAccess()
1418 DelayDependentAccess(S, EC, Loc, Entity); in CheckEffectiveAccess()
1426 DiagnoseBadAccess(S, Loc, EC, Entity); in CheckEffectiveAccess()
1459 EffectiveContext EC(S.CurContext); in CheckAccess() local
1460 switch (CheckEffectiveAccess(S, EC, Loc, Entity)) { in CheckAccess()
1483 EffectiveContext EC(DC); in HandleDelayedAccessCheck() local
1487 if (CheckEffectiveAccess(*this, EC, DD.Loc, Target) == ::AR_inaccessible) in HandleDelayedAccessCheck()
1763 EffectiveContext EC(CurContext); in CheckFriendAccess() local
1764 switch (CheckEffectiveAccess(*this, EC, target->getLocation(), entity)) { in CheckFriendAccess()
1865 EffectiveContext EC(CurContext); in IsSimplyAccessible() local
1866 return ::IsAccessible(*this, EC, Entity) != ::AR_inaccessible; in IsSimplyAccessible()