================
@@ -1412,13 +1412,18 @@ TemplateArgumentLoc 
Sema::getTemplateArgumentPackExpansionPattern(
   }
 
   case TemplateArgument::Expression: {
-    PackExpansionExpr *Expansion
-      = cast<PackExpansionExpr>(Argument.getAsExpr());
+    CanonicalizationKindOrNone CanonKind = std::nullopt;
+    Expr *OrigE = OrigLoc.getSourceExpression(), *E = OrigE;
+    if (!E) { // FIXME: Does this ever happen?
+      E = Argument.getAsExpr();
+      CanonKind = Argument.getExprCanonKind();
+    }
----------------
cor3ntin wrote:

Maybe put an assert? It beats having dead code

https://github.com/llvm/llvm-project/pull/190495
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to