================
@@ -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

Reply via email to