[clang] [clang] Fix CTAD not work for C++ explicit type conversion (functional annotation). (PR #75779)

via cfe-commits cfe-commits at lists.llvm.org
Mon Dec 18 02:17:00 PST 2023


================
@@ -10804,9 +10804,12 @@ QualType Sema::DeduceTemplateSpecializationFromInitializer(
     if (getLangOpts().CPlusPlus20 && !HasAnyDeductionGuide) {
       if (ListInit && ListInit->getNumInits()) {
         SynthesizeAggrGuide(ListInit);
-      } else if (PL && PL->getNumExprs()) {
-        InitListExpr TempListInit(getASTContext(), PL->getLParenLoc(),
-                                  PL->exprs(), PL->getRParenLoc());
+      } else if (Inits.size()) { // parenthesized expression-list
+        // Inits are expressions inside the parentheses. We don't have
+        // the parentheses source locaitons, use the begin/end of Inits as the
----------------
cor3ntin wrote:

```suggestion
        // the parentheses source locations, use the begin/end of Inits as the
```

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


More information about the cfe-commits mailing list