Issue 144560
Summary [clang-format] Inconsistent formatting for the last element of an initializer list with `AlignAfterOpenBracket: BlockIndent` in clang-format-20
Labels clang-format
Assignees
Reporter vient
    Test case - both elements are identical
```cpp
auto _ = {
    {"a",
 []() {
       return looooooooooooooooooooooooooooooooooooooooooooooooooong_fn();
     }},

 {"a",
     []() {
       return looooooooooooooooooooooooooooooooooooooooooooooooooong_fn();
 }},
}
```

clang-format-19
```
$ clang-format-19 -style="{AlignAfterOpenBracket: BlockIndent}" test.cpp
auto _ = {
 {"a",
     []() {
       return looooooooooooooooooooooooooooooooooooooooooooooooooong_fn();
     }},

 {"a",
     []() {
       return looooooooooooooooooooooooooooooooooooooooooooooooooong_fn();
 }},
}
```

clang-format-20 - note that second element got lambda start placed on the same line as `"a"`
```
$ clang-format-20 -style="{AlignAfterOpenBracket: BlockIndent}" test.cpp
auto _ = {
 {"a",
     []() {
       return looooooooooooooooooooooooooooooooooooooooooooooooooong_fn();
     }},

 {"a", []() {
       return looooooooooooooooooooooooooooooooooooooooooooooooooong_fn();
 }},
}
```
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to