================ @@ -951,7 +951,8 @@ static const Expr *SubstituteConstraintExpressionWithoutSatisfaction( DeclInfo.getDecl(), DeclInfo.getLexicalDeclContext(), /*Final=*/false, /*Innermost=*/std::nullopt, /*RelativeToPrimary=*/true, - /*Pattern=*/nullptr, /*ForConstraintInstantiation=*/true, + /*Pattern=*/nullptr, + !isa_and_present<ClassTemplateDecl>(DeclInfo.getDecl()), ---------------- zyn0217 wrote:
This looks wrong: With the flag disabled, we wouldn't correctly collect template arguments for the outer class template in this case. Having collected nothing for the other hand side's constraint expression doesn't mean we should do the same for the primary declaration. https://github.com/llvm/llvm-project/pull/102554 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits