<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">