[clang] [clang] Fix CTAD not work for C++ explicit type conversion (functional annotation). (PR #75779)
Shafik Yaghmour via cfe-commits
cfe-commits at lists.llvm.org
Mon Dec 18 09:59:40 PST 2023
shafik wrote:
> > Why remove the support for ParenListExpr entirely? Could you not fallback on looking at the init list expression only when ParenListExpr is null?
>
> We could keep `ParenListExpr`, but I'm not sure the benefit (IMO, removing it seems like an API improvement, and make code simpler). The `ParenListExpr` is redundant with the existing `Inits` parameter to some degree, the only benefit to use it is for the precise `()` location information (as we deduct the template type here, I think it is fine to use a less-precise source location).
>
> Looking at all usages (total 4) of `DeduceTemplateSpecializationFromInitializer` in clang, only 1 [place](https://github.com/llvm/llvm-project/blob/main/clang/lib/Sema/SemaDecl.cpp#L12959) passes the `ParenListExpr`.
As long as it does not effect the quality of the diagnostics then this makes sense.
https://github.com/llvm/llvm-project/pull/75779
More information about the cfe-commits
mailing list