<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/71837>71837</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
lldb doesn't recognize class member variables in lambda on Windows
</td>
</tr>
<tr>
<th>Labels</th>
<td>
lldb,
platform:windows
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
ZequanWu
</td>
</tr>
</table>
<pre>
Copy example from https://github.com/llvm/llvm-project/issues/71562:
```
$ cat a.cpp
#include <stdio.h>
class foo {
public:
void fun() {
auto f = [=] {
int c = a;
int d = b;
printf("%d %d\n", c, d);
};
f();
}
private:
int a = 1;
int b = 2;
};
int main() {
foo f;
f.fun();
return 0;
}
$ clang-cl a.cpp /c /Foa.obj /Z7
$ lld-link /debug a.obj /out:a.exe /pdb:a.pdb
```
Setting breakpoint inside lambda `f` and print a or b shows:
`error: <user expression 0>:1:1: use of undeclared identifier 'a'`
It's likely this functionality is missing.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJykVM1u4zgMfhr6QtSwJTtODj5kmgmw5z0MMDfJoh1NZcmrn067T7-Q3TYutrcBEtr8-JkUf0QRgp4sUQ_tN2gvhUjx5nz_k_5Jwv5IhXTqtX90yyvSi5gXQzh6N-MtxiUAPwO7ArtOOt6SLAc3A7sa8_z-eFi8-0VDBHbVISQKwK5d3R5Y_rK6QHWGQ_X221TW4CAiinJYlneIazuYpAiBP4aotCtvwL-_WVc5GBECjs4hdN82CJckjR4-AiE-O61wTBbYEdhpx0REkaLDEYFfMNeBX6C9fGYgahtxWCkC-P8sarXIu2Xx2sZxDcaAtQqzgPbRrvojDlkoYKdPzqC7fNI3B3tOZuxSz3GeRaRdovk4Yj1Ovfsuo3JF2Qe6j7bJzJqF_qJIubrjzt9YftRyh3qKyVusPoW4t9YIOz0MZusvArsOWVydKJ38lV9_dne2MerBaPuUcUUyTfhBcykCP4uSXiiri5Krmp9fjdXfFKO2E0pP4mlxOUltg1aERsxSCYRDNcKhQmHV1jgU6DxKDDf3O-ynlbx3Hvg5D2MK5JFeFk8haLdm_R34uX77YwqEbsRkFQ1GeFKoFdmoR00egXUCWHcf_VX-FYF1AY1-IvOK8aZDHtkhameF0fEVdcBZh6DtVBaq5-rET6Kgvj6cTm3bMH4sbv2hFl19qOu6qpUcOlEr2RzZkUnVjINsqNA9qxiv6-pUHxlvjyVnVLWsrZuGmGqHEzQVzUKbMt_i0vmpWO9v39VH3hVGSDJh3RiMGaPkNtLA2GJEHJ2fgZ9_a6ty7RjLa8X36z6QaQrQVEaHGO6-o46G-uwIlaNggXURPQ1usvpfwu12zzRL8vgsvBbSUEBt37vnLP7YohXJm_5PdtORd_8FAAD__wszc6E">