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