<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/103306>103306</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [clang-format] Weird line breaks with `AlignAfterOpenBracket: BlockIndent`
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang-format
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          lukasberbuer
      </td>
    </tr>
</table>

<pre>
    Following example showcases weird line-breaking choices with `AlignAfterOpenBracket: BlockIndent`:

- Pure LLVM style:
  ```cpp
  auto result = std::optional<int>(123)
                  .transform([](int n) { return n + 100; })
                  .transform([](int n) {
                      // multiline lambda
                      return std::to_string(n);
                  });
  ```

- With `AlignAfterOpenBracket: BlockIndent` ðŸ’¥:
  ```cpp
  auto result = std::optional<int>(123).transform([](int n) { return n + 100; }
  ).transform([](int n) {
      // multiline lambda
      return std::to_string(n);
  });
  ```

- Desired output:
  ```cpp
  auto result = std::optional<int>(123)
      .transform([](int n) { return n + 100; })
      .transform([](int n) {
          // multiline lambda
          return std::to_string(n);
      });
  ```

Any ideas how to fix this? Can it be done just via the config?

## `.clang-format`

```yaml
---
BasedOnStyle: LLVM
AlignAfterOpenBracket: BlockIndent
AlignOperands: DontAlign
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0Vd-L4zYQ_mvGL0OCLMWJ_eCH5FJD4coWCr3HItkTW7eKZKTx7u1_X5xks7cLVxLuKoxtpPml7xvp0ynZ3hPVUOyg2Gd64iHE2k2POhmKZqKYmdC91E1wLjxb3yN908fREaYhPLc6UcJnsrFDZz0tTCT9OFu1Q7DtvGZ5QFiLrbO93x6Y4sNIfhd1-0gMaos7F9rH331HnmEtQG1B7EFc3gv8c4qEnz___QcmfnF0Xcc56Plpx_F1Tk8cMFKaHCOoPSbuZg-1DSPb4LUD9cl6BvUbyDKXCmT16vpxLDlqnw4hHkGWZ3RAltYzepAVwmaHkXiKHj2C3GEuBKgdwmb_U0F_5DkPkA3IBo-TYzujjU4fTaf_y-VS4hUHDv8kjtb3IMs5JagfZrzs5M3gCvh7hr7cxzBCI6BqoJKwLX49nT9B22shtwT5HrQbaLmDhlth31OykToME48T_7_n4pedhfv7_8aev7PPbwN561_QdqQTDuEZOeDBfkMebALV4Cft0TIawi54wq9TYnyyGnkgbIM_2B5U8300mGFVc6Zl67TvFzMMmj_kvBbyoo_uwvVicf7Z6UTdg__rchGersVLpbecvTfLh5Gi9l2aLfbB82nyQ_6sq1VXqUpnVOcbqYp1sSlENtRF3lWlWYlNW3U6rw5KVGujSGlTakHqkNlaCrkSZa7ydV4UYmlyIbWpyJiyXBWtgpWgo7Zu6dzTcRlin9mUJqpzoZRYZ04bcumkSFK-g0rKWaNiPfstzNQnWAlnE6e3SGzZndTsnWOxxy9XkcKTSN0tTdkUXT0wjzNs57bsLQ-TWbbhCLKZS7h8FmMMX6llkM1pZwlkc9ncUy3_DQAA__-Y7xfp">