================ @@ -50,17 +50,29 @@ class CollectUnexpandedParameterPacksVisitor auto *FTD = FD ? FD->getDescribedFunctionTemplate() : nullptr; if (FTD && FTD->getTemplateParameters()->getDepth() >= DepthLimit) return; - } else if (getDepthAndIndex(ND).first >= DepthLimit) + } else if (auto *BD = dyn_cast<BindingDecl>(ND)) { + Expr *E = BD->getBinding(); + if (auto *RP = dyn_cast_if_present<ResolvedUnexpandedPackExpr>(E)) { + addUnexpanded(RP); + return; + } ---------------- zyn0217 wrote:
I was thinking if we can get rid of the `dyn_cast_if_present` thing.. Do you have a case where we ended up in `addUnexpanded` with a BindingDecl whose binding isn't a ResolvedUnexpandedPackExpr? https://github.com/llvm/llvm-project/pull/121417 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits