• Home
  • Raw
  • Download

Lines Matching refs:EC

397                                   const EffectiveContext &EC,  in MatchesFriend()  argument
399 if (EC.includesClass(Friend)) in MatchesFriend()
402 if (EC.isDependent()) { in MatchesFriend()
407 I = EC.Records.begin(), E = EC.Records.end(); I != E; ++I) { in MatchesFriend()
419 const EffectiveContext &EC, in MatchesFriend() argument
422 return MatchesFriend(S, EC, cast<CXXRecordDecl>(RT->getDecl())); in MatchesFriend()
434 const EffectiveContext &EC, in MatchesFriend() argument
441 I = EC.Records.begin(), E = EC.Records.end(); I != E; ++I) { in MatchesFriend()
463 if (!EC.isDependent()) in MatchesFriend()
487 const EffectiveContext &EC, in MatchesFriend() argument
492 I = EC.Functions.begin(), E = EC.Functions.end(); I != E; ++I) { in MatchesFriend()
496 if (EC.isDependent() && MightInstantiateTo(S, *I, Friend)) in MatchesFriend()
506 const EffectiveContext &EC, in MatchesFriend() argument
508 if (EC.Functions.empty()) return AR_inaccessible; in MatchesFriend()
513 I = EC.Functions.begin(), E = EC.Functions.end(); I != E; ++I) { in MatchesFriend()
526 if (EC.isDependent() && MightInstantiateTo(S, FTD, Friend)) in MatchesFriend()
536 const EffectiveContext &EC, in MatchesFriend() argument
544 return MatchesFriend(S, EC, T->getType()->getCanonicalTypeUnqualified()); in MatchesFriend()
552 return MatchesFriend(S, EC, cast<ClassTemplateDecl>(Friend)); in MatchesFriend()
555 return MatchesFriend(S, EC, cast<FunctionTemplateDecl>(Friend)); in MatchesFriend()
558 return MatchesFriend(S, EC, cast<CXXRecordDecl>(Friend)); in MatchesFriend()
561 return MatchesFriend(S, EC, cast<FunctionDecl>(Friend)); in MatchesFriend()
565 const EffectiveContext &EC, in GetFriendKind() argument
574 switch (MatchesFriend(S, EC, Friend)) { in GetFriendKind()
597 const EffectiveContext &EC; member
605 ProtectedFriendContext(Sema &S, const EffectiveContext &EC, in ProtectedFriendContext()
608 : S(S), EC(EC), NamingClass(NamingClass), in ProtectedFriendContext()
618 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().MicrosoftMode && !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
1030 I = EC.Records.begin(), E = EC.Records.end(); I != E; ++I) { in TryDiagnoseProtectedAccess()
1095 const EffectiveContext &EC, in DiagnoseAccessPath() argument
1106 switch (HasAccess(S, EC, DeclaringClass, D->getAccess(), Entity)) { in DiagnoseAccessPath()
1109 TryDiagnoseProtectedAccess(S, EC, Entity)) in DiagnoseAccessPath()
1168 CXXBasePath &Path = *FindBestPath(S, EC, Entity, AS_public, Paths); in DiagnoseAccessPath()
1182 switch (GetFriendKind(S, EC, I->Class)) { in DiagnoseAccessPath()
1218 const EffectiveContext &EC, in DiagnoseBadAccess() argument
1229 DiagnoseAccessPath(S, EC, Entity); in DiagnoseBadAccess()
1273 const EffectiveContext &EC, in IsAccessible() argument
1289 switch (HasAccess(S, EC, NamingClass, UnprivilegedAccess, Entity)) { in IsAccessible()
1318 switch (HasAccess(S, EC, DeclaringClass, FinalAccess, Entity)) { in IsAccessible()
1338 CXXBasePath *Path = FindBestPath(S, EC, Entity, FinalAccess, Paths); in IsAccessible()
1350 const EffectiveContext &EC, in DelayDependentAccess() argument
1353 assert(EC.isDependent() && "delaying non-dependent access"); in DelayDependentAccess()
1354 DeclContext *DC = EC.getInnerContext(); in DelayDependentAccess()
1368 const EffectiveContext &EC, in CheckEffectiveAccess() argument
1377 switch (IsAccessible(S, EC, Entity)) { in CheckEffectiveAccess()
1379 DelayDependentAccess(S, EC, Loc, Entity); in CheckEffectiveAccess()
1384 DiagnoseBadAccess(S, Loc, EC, Entity); in CheckEffectiveAccess()
1417 EffectiveContext EC(S.CurContext); in CheckAccess() local
1418 switch (CheckEffectiveAccess(S, EC, Loc, Entity)) { in CheckAccess()
1440 EffectiveContext EC(DC); in HandleDelayedAccessCheck() local
1444 if (CheckEffectiveAccess(*this, EC, DD.Loc, Target) == ::AR_inaccessible) in HandleDelayedAccessCheck()
1711 EffectiveContext EC(CurContext); in CheckFriendAccess() local
1712 switch (CheckEffectiveAccess(*this, EC, target->getLocation(), entity)) { in CheckFriendAccess()
1813 EffectiveContext EC(CurContext); in IsSimplyAccessible() local
1814 return ::IsAccessible(*this, EC, Entity) != ::AR_inaccessible; in IsSimplyAccessible()