[clang-format] Multiline requires expression breaks formatting
- Dominant language
- LLVM
- Stars
- 40.5k
- Forks
- 18.7k
- PR merge metrics
- PR metrics pending
Description
When requires expression that has multiple statements is used as operand of binary operator (and some longer expression), code is formatted incorrectly (doesn't respect column limit).
Example input:
```cpp
template
inline constexpr bool some_long_name_just_for_example{true};
template
using Typ = T;
template
concept C = requires {
typename Typ;
typename Typ;
}
&& some_long_name_just_for_example
&& some_long_name_just_for_example
&& some_long_name_just_for_example;
int main() {}
```
Output:
```cpp
template inline constexpr bool some_long_name_just_for_example{true};
template using Typ = T;
template
concept C = requires {
typename Typ;
typename Typ;
} && some_long_name_just_for_example && some_long_name_just_for_example && some_long_name_just_for_example;
int main() {}
```
`.clang_format`:
```yaml
BreakBeforeBinaryOperators: All
ColumnLimit: 80
```
clang-format version 20.1.8 (Fedora 20.1.8-4.fc42)
Contributor guide
Assessment
This issue has not been assessed yet.