Lines Matching refs:Friend

332                                DeclContext *Friend) {  in MightInstantiateTo()  argument
333 if (Friend == Context) in MightInstantiateTo()
336 assert(!Friend->isDependentContext() && in MightInstantiateTo()
342 if (Friend->isFileContext()) in MightInstantiateTo()
351 static bool MightInstantiateTo(Sema &S, CanQualType Context, CanQualType Friend) { in MightInstantiateTo() argument
352 if (Friend == Context) in MightInstantiateTo()
355 if (!Friend->isDependentType() && !Context->isDependentType()) in MightInstantiateTo()
364 FunctionDecl *Friend) { in MightInstantiateTo() argument
365 if (Context->getDeclName() != Friend->getDeclName()) in MightInstantiateTo()
370 Friend->getDeclContext())) in MightInstantiateTo()
374 = S.Context.getCanonicalType(Friend->getType()) in MightInstantiateTo()
402 FunctionTemplateDecl *Friend) { in MightInstantiateTo() argument
405 Friend->getTemplatedDecl()); in MightInstantiateTo()
410 const CXXRecordDecl *Friend) { in MatchesFriend() argument
411 if (EC.includesClass(Friend)) in MatchesFriend()
416 if (MightInstantiateTo(Context, Friend)) in MatchesFriend()
426 CanQualType Friend) { in MatchesFriend() argument
427 if (const RecordType *RT = Friend->getAs<RecordType>()) in MatchesFriend()
431 if (Friend->isDependentType()) in MatchesFriend()
441 ClassTemplateDecl *Friend) { in MatchesFriend() argument
465 if (Friend == CTD->getCanonicalDecl()) in MatchesFriend()
474 if (CTD->getDeclName() != Friend->getDeclName()) in MatchesFriend()
480 Friend->getDeclContext())) in MatchesFriend()
494 FunctionDecl *Friend) { in MatchesFriend() argument
499 if (Friend == *I) in MatchesFriend()
502 if (EC.isDependent() && MightInstantiateTo(S, *I, Friend)) in MatchesFriend()
513 FunctionTemplateDecl *Friend) { in MatchesFriend() argument
529 if (Friend == FTD) in MatchesFriend()
532 if (EC.isDependent() && MightInstantiateTo(S, FTD, Friend)) in MatchesFriend()
552 NamedDecl *Friend in MatchesFriend() local
557 if (isa<ClassTemplateDecl>(Friend)) in MatchesFriend()
558 return MatchesFriend(S, EC, cast<ClassTemplateDecl>(Friend)); in MatchesFriend()
560 if (isa<FunctionTemplateDecl>(Friend)) in MatchesFriend()
561 return MatchesFriend(S, EC, cast<FunctionTemplateDecl>(Friend)); in MatchesFriend()
563 if (isa<CXXRecordDecl>(Friend)) in MatchesFriend()
564 return MatchesFriend(S, EC, cast<CXXRecordDecl>(Friend)); in MatchesFriend()
566 assert(isa<FunctionDecl>(Friend) && "unknown friend decl kind"); in MatchesFriend()
567 return MatchesFriend(S, EC, cast<FunctionDecl>(Friend)); in MatchesFriend()
576 for (auto *Friend : Class->friends()) { in GetFriendKind() local
577 switch (MatchesFriend(S, EC, Friend)) { in GetFriendKind()