efriedma-quic wrote:
For that testcase, AST excerpt for clang 22:
```
| `-CXXDestructorDecl <col:32> col:32 implicit
used ~(lambda at line:19:32) 'void () noexcept' inline default
| `-CompoundStmt <col:32>
|-CXXConstructExpr <col:38, col:41>
'std::string':'std::basic_string<char>' 'void (const basic_string<char> &)'
| `-ImplicitCastExpr <col:38, col:41> 'const
basic_string<char>' lvalue <NoOp>
| `-MemberExpr <col:38, col:41>
'std::string':'std::basic_string<char>' lvalue .s 0x3a991ef0
| `-MemberExpr <col:38> 'NonTrivial' lvalue
->nt 0x3a9a0148
| `-CXXThisExpr <col:38> 'S *' implicit this
```
and for main:
```
| `-CXXDestructorDecl <col:32> col:32 implicit
used ~(lambda at line:19:32) 'void () noexcept' inline default
| `-CompoundStmt <col:32>
|-MemberExpr <col:38, col:41>
'std::string':'std::basic_string<char>' lvalue .s 0x11629f50
| `-MemberExpr <col:38> 'NonTrivial' lvalue
->nt 0x11634e08
| `-CXXThisExpr <col:38> 'S *' implicit this
```
I guess we're missing code to construct an InitializationSequence for the
lambda capture.
https://github.com/llvm/llvm-project/pull/196597
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits