================ @@ -1012,7 +1012,14 @@ static const Expr *SubstituteConstraintExpressionWithoutSatisfaction( // possible that e.g. constraints involving C<Class<T>> and C<Class> are // perceived identical. std::optional<Sema::ContextRAII> ContextScope; - if (auto *RD = dyn_cast<CXXRecordDecl>(DeclInfo.getDeclContext())) { + const DeclContext *DC = [&] { + if (!DeclInfo.getDecl()) + return DeclInfo.getDeclContext(); + return DeclInfo.getDecl()->getFriendObjectKind() + ? DeclInfo.getLexicalDeclContext() + : DeclInfo.getDeclContext(); ---------------- cor3ntin wrote:
I wonder if we should have a function that handles that logic of getting a lexical context for friends - we do it in a few places https://github.com/llvm/llvm-project/pull/106890 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits