[clang] [Sema] Substitute parameter packs when deduced from function arguments (PR #79371)

Gábor Spaits via cfe-commits cfe-commits at lists.llvm.org
Sat Jan 27 00:58:22 PST 2024


================
@@ -858,6 +859,27 @@ class PackDeductionScope {
       Info.PendingDeducedPacks[Pack.Index] = Pack.Outer;
   }
 
+  // Return the size of the saved packs if all of them has the same size.
+  std::optional<unsigned> getSavedPackSizeIfAllEqual() const {
+    if (Packs.size() == 0 ||
+        Packs[0].Saved.getKind() != clang::TemplateArgument::Pack)
----------------
spaits wrote:

Removed this precondition. I have also removed a redundant condition from the checking of the equivalence of pack sizes.

https://github.com/llvm/llvm-project/pull/79371


More information about the cfe-commits mailing list