Den fre 17 juli 2026 17:28André Somers via Development <
[email protected]> skrev:
> Hi,
>
>
> On 16-07-2026 11:14, Marc Mutz via Development wrote:
>
> Hi,
>
> The current style guide¹ asks for attached braces on if statements, incl.
> when the if condition spans multiple lines (#6):
>
> // Correct
> if (address.isEmpty() || !isValid()
> || !codec) {
> return false;
> }
>
> I've been bothered by this for years, since I think this is totally
> unreadable. In particular, if the last line of the if is on the longer
> side, the body of the then branch is almost impossible to distinguish from
> a continuation of the condition.
>
> I would therefore like to propose to allow placing the opening brace on a
> separate line if the if condition is multi-line:
>
> // (now also) Correct
> if (address.isEmpty() || !isValid()
> || !codec)
> {
> return false;
> }
>
> I agree. I find this more readable. But I would prefer to have logical
> groups of the condition be either broken one per line, or all on the same
> line. So:
>
>
> // Correct
> if (address.isEmpty() || !isValid() || !codec) {
> return false;
> }
>
> or
>
>
> // (now also) Correct
> if (address.isEmpty()
> || !isValid()
> || !codec)
> {
> return false;
> }
>
> If we're going to have a bit of suggestion bingo in here, I have to throw
in:
if (
address.isEmpty()
|| !isValid()
|| !codec
) {
return false;
}
I.e. not only putting each group on its own line, but also letting it be
there by itself without any (, ) or {. I think that lets you focus on what
the group is saying best, without any "distraction" on the line.
Realize some people may not like this "tall" style, but thought I'd throw
it in there since it somewhat sneakily dodges the question of the opening
brace - it's consistent with other situations in that it's kept with the ),
but there's a bit of "air" between conditions and body.
> But also this:
>
> // (now also) Correct
> if ((address.isEmpty() && !isValid())
> || !codec)
> {
> return false;
> }
>
>
> Cheers,
>
>
> André
>
>
> --
> Development mailing list
> [email protected]
> https://lists.qt-project.org/listinfo/development
>
--
Development mailing list
[email protected]
https://lists.qt-project.org/listinfo/development