<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/107024>107024</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang] "error: ambiguous reference to placeholder" when '_' is used as identifier in lambda capture
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
mjerabek
</td>
</tr>
</table>
<pre>
### Minimized reproducer
```c++
int foo() {
return [_ = 42]() { return _; }();
}
```
https://godbolt.org/z/5r7GW53re
### Error
```
<source>:2:32: error: ambiguous reference to placeholder '_', which is defined multiple times
2 | return [_ = 42]() { return _; }();
| ^
<source>:2:13: note: placeholder declared here
2 | return [_ = 42]() { return _; }();
| ^
<source>:2:13: note: placeholder declared here
<source>:2:12: error: cannot initialize return object of type 'int' with an rvalue of type 'void'
2 | return [_ = 42]() { return _; }();
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
2 errors generated.
```
### Further info
Affected versions: 18.1.0, trunk
clang 17.0.1 works ok, other compilers also seem to work ok
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy8VE1v4zYQ_TWjy2AFaWhF1kEHJ4576rnHgCJHFjcUaZCUjc2hv72gPzbOIlugaLsCQYLkm9G84cyTMZq9Y-6heYRmW8glTT7081cOcuDXYvD6Ww8kLgN_N87M5o01Bj4ErxfFAaotVJvr_FBdhgJ6zON8alzC0XugNVCH0F6PEREDpyU4hObxBUFscUXQbN-Bt_sXEI8I7fUGxNVDPvn438t2SukQQWyAdkC7vdeDt6n0YQ-0ewPaNaH97Y9GBP4Q-3eWzyH4z2ldt-Ip-iUoBvEMYkMgNiJPyGdDsUE5D2a_-CVi4JEDO8WYPB6sVDx5qzkgUPsC1AI94WkyakITUfNoHGucF5vMwTImM3N8zxYhtE_47_N2dvHd19980Dz_lHItMlPnE-f1nppmZWVgjRPfUvz_R_-fhfqZ_cfXVdI5n9A4k4y05o1vAfvhK6uEfsT07cD5iY1LQC2eTJpQOgxHaRe-Bxy90bkMfk2WoHn-82ffxYwuNCPu2XGQiXX5eQ_80DO7JaSJAxo3-nvEZhxZJdZ45BCNd7ktsV6XdVnl0k9hca_3eGWl22PdllVZ48mH14j-NSP92b3y88FYDhGljR4j85wbKwMz7s5RoXuhO9HJgvu6pUbUon1YF1Pf1WrgtWobKVvRKS1FLetRP6yFFs3DoArTU0WrqquI6lVH61LorlvJUbWd0NSsRlhVPEtjS2uPc5aVwsS4cF9XbUWrwsqBbbwpaugz6suw7COsKmtiiu92ySR71t4zbWi2CET_QEWACE8Tu5uaZBFZImuUEY1ml8xozo-CVs6DlqjkIS2BiyXY_geVNGlahlL5GWiXA7wuXw7B56oG2p1ZRqDdleixp78CAAD__zGtxtM">