Author: Emmanuel Antonio Date: 2026-10-21T13:46:22+02:00 New Revision: 8c5e15a03a4ea519b49cd1339169b50431c90d74
URL: https://github.com/llvm/llvm-project/commit/8c5e15a03a4ea519b49cd1339169b50431c90d74 DIFF: https://github.com/llvm/llvm-project/commit/8c5e15a03a4ea519b49cd1339169b50431c90d74.diff LOG: [Clang] Use getNonTypeTemplateArgumentType fallback in getTypeOfConstantTemplateParameter (#231983) Follow-up to c169131b760c (#231599). Arg.getNonTypeTemplateArgumentType() in Sema::getTypeOfConstantTemplateParameter when Arg does not name a constant template parameter, and remove the unnecessary T.isNull() check in isUndeducedAuto. Added: Modified: clang/lib/Sema/SemaTemplate.cpp clang/lib/Sema/SemaTemplateDeduction.cpp Removed: ################################################################################ diff --git a/clang/lib/Sema/SemaTemplate.cpp b/clang/lib/Sema/SemaTemplate.cpp index 5a61cb852d15e..ec1f8077893eb 100644 --- a/clang/lib/Sema/SemaTemplate.cpp +++ b/clang/lib/Sema/SemaTemplate.cpp @@ -5613,8 +5613,6 @@ bool Sema::CheckTemplateArgument(NamedDecl *Param, TemplateArgumentLoc &ArgLoc, // parameter of type decltype(auto) ([temp.func.order]), the declaration // is ill-formed. auto isUndeducedAuto = [](QualType T, bool DecltypeAuto) { - if (T.isNull()) - return false; const AutoType *AT = T->getContainedAutoType(); return AT && AT->isDecltypeAuto() == DecltypeAuto && AT->getDeducedType().isNull(); diff --git a/clang/lib/Sema/SemaTemplateDeduction.cpp b/clang/lib/Sema/SemaTemplateDeduction.cpp index b9cda516c7a48..3e1819c9134ff 100644 --- a/clang/lib/Sema/SemaTemplateDeduction.cpp +++ b/clang/lib/Sema/SemaTemplateDeduction.cpp @@ -261,7 +261,7 @@ QualType Sema::getTypeOfConstantTemplateParameter(const TemplateArgument &Arg) { if (NonTypeOrVarTemplateParmDecl NTTP = getNTTParameterFromExpr(Arg.getAsExpr(), std::nullopt)) return NTTP.getType(); - return QualType(); + return Arg.getNonTypeTemplateArgumentType(); } static const NonTypeOrVarTemplateParmDecl _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
