https://github.com/zyn0217 created 
https://github.com/llvm/llvm-project/pull/87768

None

>From eb6c961896646a62f334284093994160d8c0e38e Mon Sep 17 00:00:00 2001
From: Younan Zhang <zyn7...@gmail.com>
Date: Fri, 5 Apr 2024 19:12:28 +0800
Subject: [PATCH] [clang][Sema] Avoid guessing unexpanded packs' size in
 getFullyPackExpandedSize

---
 clang/lib/Sema/SemaTemplateVariadic.cpp | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/clang/lib/Sema/SemaTemplateVariadic.cpp 
b/clang/lib/Sema/SemaTemplateVariadic.cpp
index 903fbfd18e779c..f26771c64074b3 100644
--- a/clang/lib/Sema/SemaTemplateVariadic.cpp
+++ b/clang/lib/Sema/SemaTemplateVariadic.cpp
@@ -1243,7 +1243,10 @@ std::optional<unsigned> 
Sema::getFullyPackExpandedSize(TemplateArgument Arg) {
     // expanded this pack expansion into the enclosing pack if we could.
     if (Elem.isPackExpansion())
       return std::nullopt;
+    if (Elem.containsUnexpandedParameterPack())
+      return std::nullopt;
   }
+  // llvm::errs() << "Optimization takes effect: " << Pack.pack_size() << "\n";
   return Pack.pack_size();
 }
 

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to