<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/71340>71340</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
clang-format should apply `OuterScope` only if one function argument is a lambda
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
owenca
</td>
</tr>
</table>
<pre>
```
$ cat test.cpp
dyn_switch(V->stripPointerCasts(),
[] (PHINode *PN) {
// process phis...
},
[] (AllocaInst *AI) {
// process allocas...
});
$ clang-format -version
clang-format version 17.0.4
$ clang-format -style='{LambdaBodyIndentation: OuterScope}' test.cpp
dyn_switch(
V->stripPointerCasts(),
[](PHINode *PN) {
// process phis...
},
[](AllocaInst *AI) {
// process allocas...
});
```
Expected output: same as input
In other words, `OuterScope` shouldn't apply if multiple arguments in a function call are lambdas. @jp4a50
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMk91q4zAQhZ9mfDPEyOP_C18kTcMGlm5hYW8X2VZiFVkSktxu3n5xnG76w7YNwQaNzhzNd2TuvTxqIRrIN5BvIz6FwbjGPAnd8ag1_amBgl3-bAtsDZRhxwMG4UPcWbus9if92z_J0A1A1a8VpLc-OGnvjdRBuBvugweqgGqgm0WB19_ijUDV_bf9nekFAq3v74BqhHLzbjsi0A5oh9aZTniPdpA-juP3fcvtx3ZrpUzH99qH2XG9_7IjPwtfmJ6takg3LyApro-rg3EjD7h6FM5Lo5fyq9KlgkkZszj7n96HkxKQboFKKDff-dj2fGP60173Qgce5t7pGn9MQbifnbHifKLyo5iuY345sAXdJ0F9lM7bSP41_CSKT_i_xf_6yt7-saILokczBTuFmZPno0DuUep5YRGdn3uNJgzC4ZNxvQe6QSjYC6oFQz-YSfUaqAzIrVUnlAccJxWkVQK5O06j0GHujRwPk-7mcLDjSiF3AtU5Ox8jZOzBZjxnUd-kfZ3WPBJNUtQ1UUUVRUNzoIyXxNK6K5I2P_C0SERdlVXbU9WKIo9kQ4zSJGE5pXlCFNMh75O8LbKcUUtVBxkTI5cqVupxjI07RtL7STRlkmYsUrwVyj9_-66ZN63a6eghY0r64K-yIIMSzas7uXC4IHhHyegFjNHiCuEZDkqP_EIimpxqhhCsh3S95HyUYZjauDMj0G4-wuW1ss48iC4A7c5jeKDdeZK_AQAA__-0G2Rc">