From: Leila Date: Sun, 10 Jun 2012 20:52:18 GMT Subject: Re: [PATCH/RFC] Documenation update: use of braces in if/else if/else chain Message-ID: In-Reply-To: <20120610202205.GA2052@burratino> On Sun, Jun 10, 2012 at 4:22 PM, Jonathan Nieder wrote: > Also true.  But: > >        /* correct */ >        if (bla) { >                x = 1; >                ... >        } else >                x = 2; > According to a discussion on my patch, this was cited (not in ref to my code): Junio C Hamano a écrit : Two points on style (also appear elsewhere in this patch): if (!"applying") { ... } else { state->rebase_in_progress = 1; } - "else" comes on the same line as closing "}" of its "if" block; - if one of if/else if/else chain has multiple statement block, use {} even for a single statement block in the chain. So I opened this documentation patch to gain consensus around this issue, and update the docs accordingly. Depending on the agreement reached, I can modify the wording of the patch. I don't need to site the linux Kernel part, I can just say what is supported in this project. I think we should still keep this part of the patch: + And "else" + should come on the same line as the closing "}" of its "if" block. > And: > > If you have a long "if" with a one-line "else", consider whether you > are needlessly keeping the reader in suspense about something simple. > It might be more pleasant to read with the exceptional case up front: > >        if (!bla) { >                x = 2; >        } else { >                x = 1; >                ... >        } > > This is especially true when the exceptional case returns or exits. > >        if (bla && no_bla) >                return error("--blah and --no-blah cannot be used together"); >        x = 1; >        ... Agreed! Thanks, Leila