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

Reply via email to