HerrCai0907 added inline comments.
================ Comment at: clang/lib/Sema/SemaTemplateDeduction.cpp:3598 + FD->isDefined(FDFriend, true) && + FDFriend->getFriendObjectKind() != Decl::FriendObjectKind::FOK_None) { + // if Function defined by inline friend, use inline fried as DeclContext ---------------- erichkeane wrote: > So in what case would the currently-instantiated definition NOT also be a > friend? I would think this last condition should be able to be an assert > instead. Last condition cannot be an assert, define and declare in difference place is common case, what we need to identifier in here is inlined friend define. ================ Comment at: clang/lib/Sema/SemaTemplateDeduction.cpp:3601 + FD = const_cast<FunctionDecl *>(FDFriend); + Owner = FD->getDescribedFunctionTemplate()->getLexicalDeclContext(); + } ---------------- erichkeane wrote: > I THINK this should just be: > `Owner = FD->getLexicalDeclContext()` here. The old `Owner` is `FunctionTemplate->getLexicalDeclContext()`. So I think we should use same level owner. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149009/new/ https://reviews.llvm.org/D149009 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits