• Home
  • Raw
  • Download

Lines Matching refs:EC

407                                   const EffectiveContext &EC,  in MatchesFriend()  argument
409 if (EC.includesClass(Friend)) in MatchesFriend()
412 if (EC.isDependent()) { in MatchesFriend()
417 I = EC.Records.begin(), E = EC.Records.end(); I != E; ++I) { in MatchesFriend()
429 const EffectiveContext &EC, in MatchesFriend() argument
432 return MatchesFriend(S, EC, cast<CXXRecordDecl>(RT->getDecl())); in MatchesFriend()
444 const EffectiveContext &EC, in MatchesFriend() argument
451 I = EC.Records.begin(), E = EC.Records.end(); I != E; ++I) { in MatchesFriend()
473 if (!EC.isDependent()) in MatchesFriend()
497 const EffectiveContext &EC, in MatchesFriend() argument
502 I = EC.Functions.begin(), E = EC.Functions.end(); I != E; ++I) { in MatchesFriend()
506 if (EC.isDependent() && MightInstantiateTo(S, *I, Friend)) in MatchesFriend()
516 const EffectiveContext &EC, in MatchesFriend() argument
518 if (EC.Functions.empty()) return AR_inaccessible; in MatchesFriend()
523 I = EC.Functions.begin(), E = EC.Functions.end(); I != E; ++I) { in MatchesFriend()
536 if (EC.isDependent() && MightInstantiateTo(S, FTD, Friend)) in MatchesFriend()
546 const EffectiveContext &EC, in MatchesFriend() argument
554 return MatchesFriend(S, EC, T->getType()->getCanonicalTypeUnqualified()); in MatchesFriend()
562 return MatchesFriend(S, EC, cast<ClassTemplateDecl>(Friend)); in MatchesFriend()
565 return MatchesFriend(S, EC, cast<FunctionTemplateDecl>(Friend)); in MatchesFriend()
568 return MatchesFriend(S, EC, cast<CXXRecordDecl>(Friend)); in MatchesFriend()
571 return MatchesFriend(S, EC, cast<FunctionDecl>(Friend)); in MatchesFriend()
575 const EffectiveContext &EC, in GetFriendKind() argument
581 switch (MatchesFriend(S, EC, Friend)) { in GetFriendKind()
604 const EffectiveContext &EC; member
612 ProtectedFriendContext(Sema &S, const EffectiveContext &EC, in ProtectedFriendContext()
615 : S(S), EC(EC), NamingClass(NamingClass), in ProtectedFriendContext()
625 switch (GetFriendKind(S, EC, CurPath[I])) { in checkFriendshipAlongPath()
715 static AccessResult GetProtectedFriendKind(Sema &S, const EffectiveContext &EC, in GetProtectedFriendKind() argument
725 if (!InstanceContext) return GetFriendKind(S, EC, NamingClass); in GetProtectedFriendKind()
727 ProtectedFriendContext PRC(S, EC, InstanceContext, NamingClass); in GetProtectedFriendKind()
734 const EffectiveContext &EC, in HasAccess() argument
747 I = EC.Records.begin(), E = EC.Records.end(); I != E; ++I) { in HasAccess()
757 if (EC.isDependent() && MightInstantiateTo(ECRecord, NamingClass)) in HasAccess()
797 if (S.getLangOpts().MSVCCompat && !EC.Functions.empty()) in HasAccess()
798 if (CXXMethodDecl* MD = dyn_cast<CXXMethodDecl>(EC.Functions.front())) in HasAccess()
857 switch (GetProtectedFriendKind(S, EC, InstanceContext, NamingClass)) { in HasAccess()
865 switch (GetFriendKind(S, EC, NamingClass)) { in HasAccess()
932 const EffectiveContext &EC, in FindBestPath() argument
978 switch (HasAccess(S, EC, NC, PathAccess, Target)) { in FindBestPath()
1023 static bool TryDiagnoseProtectedAccess(Sema &S, const EffectiveContext &EC, in TryDiagnoseProtectedAccess() argument
1034 I = EC.Records.begin(), E = EC.Records.end(); I != E; ++I) { in TryDiagnoseProtectedAccess()
1099 const EffectiveContext &EC, in diagnoseBadDirectAccess() argument
1105 TryDiagnoseProtectedAccess(S, EC, entity)) in diagnoseBadDirectAccess()
1156 const EffectiveContext &EC, in DiagnoseAccessPath() argument
1173 switch (HasAccess(S, EC, declaringClass, accessSoFar, entity)) { in DiagnoseAccessPath()
1184 return diagnoseBadDirectAccess(S, EC, entity); in DiagnoseAccessPath()
1193 CXXBasePath &path = *FindBestPath(S, EC, entity, accessSoFar, paths); in DiagnoseAccessPath()
1216 switch (HasAccess(S, EC, derivingClass, accessSoFar, entity)) { in DiagnoseAccessPath()
1239 return diagnoseBadDirectAccess(S, EC, entity); in DiagnoseAccessPath()
1265 const EffectiveContext &EC, in DiagnoseBadAccess() argument
1276 DiagnoseAccessPath(S, EC, Entity); in DiagnoseBadAccess()
1320 const EffectiveContext &EC, in IsAccessible() argument
1333 switch (HasAccess(S, EC, NamingClass, UnprivilegedAccess, Entity)) { in IsAccessible()
1362 switch (HasAccess(S, EC, DeclaringClass, FinalAccess, Entity)) { in IsAccessible()
1386 CXXBasePath *Path = FindBestPath(S, EC, Entity, FinalAccess, Paths); in IsAccessible()
1398 const EffectiveContext &EC, in DelayDependentAccess() argument
1401 assert(EC.isDependent() && "delaying non-dependent access"); in DelayDependentAccess()
1402 DeclContext *DC = EC.getInnerContext(); in DelayDependentAccess()
1416 const EffectiveContext &EC, in CheckEffectiveAccess() argument
1421 switch (IsAccessible(S, EC, Entity)) { in CheckEffectiveAccess()
1423 DelayDependentAccess(S, EC, Loc, Entity); in CheckEffectiveAccess()
1431 DiagnoseBadAccess(S, Loc, EC, Entity); in CheckEffectiveAccess()
1464 EffectiveContext EC(S.CurContext); in CheckAccess() local
1465 switch (CheckEffectiveAccess(S, EC, Loc, Entity)) { in CheckAccess()
1488 EffectiveContext EC(DC); in HandleDelayedAccessCheck() local
1492 if (CheckEffectiveAccess(*this, EC, DD.Loc, Target) == ::AR_inaccessible) in HandleDelayedAccessCheck()
1768 EffectiveContext EC(CurContext); in CheckFriendAccess() local
1769 switch (CheckEffectiveAccess(*this, EC, target->getLocation(), entity)) { in CheckFriendAccess()
1870 EffectiveContext EC(CurContext); in IsSimplyAccessible() local
1871 return ::IsAccessible(*this, EC, Entity) != ::AR_inaccessible; in IsSimplyAccessible()