================
@@ -3572,10 +3572,17 @@ TemplateDeductionResult
Sema::SubstituteExplicitTemplateArguments(
SugaredBuilder, CanonicalBuilder,
/*UpdateArgsWithConversions=*/false) ||
Trap.hasErrorOccurred()) {
+
unsigned Index = SugaredBuilder.size();
if (Index >= TemplateParams->size())
return TemplateDeductionResult::SubstitutionFailure;
Info.Param = makeTemplateParameter(TemplateParams->getParam(Index));
+ Info.FirstArg = ExplicitTemplateArgs[Index].getArgument();
+ if (ExplicitTemplateArgs[Index].getArgument().getKind() ==
+ TemplateArgument::Expression)
+ Info.SecondArg =
+ ExplicitTemplateArgs[Index].getSourceExpression()->getType();
----------------
mizvekov wrote:
I mean other code in clang which emits a InvalidExplicitArguments, will not
currently be setting these new parameters. You need to make sure that makes
sense and will not break anything, or otherwise change these users.
https://github.com/llvm/llvm-project/pull/122754
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits