================
@@ -2143,15 +2107,17 @@ static TemplateDeductionResult 
DeduceTemplateArgumentsByTypeMatch(
       unsigned SubTDF = TDF & TDF_IgnoreQualifiers;
       if (auto Result = DeduceTemplateArgumentsByTypeMatch(
               S, TemplateParams, PPT, APT, Info, Deduced, SubTDF,
-              /*PartialOrdering=*/false, /*DeducedFromArrayBound=*/false,
-              HasDeducedAnyParam);
+              POK != PartialOrderingKind::None ? PartialOrderingKind::NonCall
----------------
mizvekov wrote:

Yes, this is slightly complicated because I tried to do an enum instead of 
adding another bool.

Basically we want to add a new flag to the deduction functions saying that we 
are in a partial ordering context, which needs to be propagated deeply.

We already had one such flag, but this one was for supporting deduction of 
function calls, and it had shallow propagation. So this is the transfer 
function for the shallow Call Partial ordering mode into the deep non-call mode.

https://github.com/llvm/llvm-project/pull/94981
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to