[clang] [Clang][P1061] Add stuctured binding packs (PR #121417)
via cfe-commits
cfe-commits at lists.llvm.org
Sun Jan 26 02:48:18 PST 2025
================
@@ -2484,6 +2489,16 @@ TemplateInstantiator::TransformDeclRefExpr(DeclRefExpr *E) {
if (PD->isParameterPack())
return TransformFunctionParmPackRefExpr(E, PD);
+ if (BindingDecl *BD = dyn_cast<BindingDecl>(D); BD && BD->isParameterPack()) {
+ BD = cast_or_null<BindingDecl>(TransformDecl(BD->getLocation(), BD));
+ if (!BD)
+ return ExprError();
+ if (auto *RP =
+ dyn_cast_if_present<ResolvedUnexpandedPackExpr>(BD->getBinding())) {
+ return TransformResolvedUnexpandedPackExpr(RP);
+ }
+ }
+
----------------
cor3ntin wrote:
```suggestion
if (auto *RP =
dyn_cast_if_present<ResolvedUnexpandedPackExpr>(BD->getBinding()))
return TransformResolvedUnexpandedPackExpr(RP);
}
```
https://github.com/llvm/llvm-project/pull/121417
More information about the cfe-commits
mailing list