From: Eric Sunshine Date: Fri, 08 May 2020 17:51:21 GMT Subject: Re: Re* [PATCH v4] submodule: port subcommand 'set-url' from shell to C Message-ID: <20200508175121.GA20180@flurp.local> In-Reply-To: On Fri, May 08, 2020 at 09:38:17AM -0700, Junio C Hamano wrote: > Eric Sunshine writes: > > + - Do not explicitly compare an integral value with constant 0 or '\0', > > + or a pointer value with constant NULL. For instance, to validate a > > + counted array ptr that has cnt elements, write: > > I think this should be > > counted array is initialized but has no elements, write: You're right. Here's a corrected version. I also applied s/a/that/ in the second line to improve the grammar a bit. --- >8 --- From: Junio C Hamano Subject: [PATCH v3] CodingGuidelines: do not ==/!= compare with 0 or '\0' or NULL Signed-off-by: Junio C Hamano Signed-off-by: Eric Sunshine --- Documentation/CodingGuidelines | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Documentation/CodingGuidelines b/Documentation/CodingGuidelines index 390ceece52..803a3b9bde 100644 --- a/Documentation/CodingGuidelines +++ b/Documentation/CodingGuidelines @@ -236,6 +236,18 @@ For C programs: while( condition ) func (bar+1); + - Do not explicitly compare an integral value with constant 0 or '\0', + or a pointer value with constant NULL. For instance, to validate that + counted array is initialized but has no elements, write: + + if (!ptr || cnt) + BUG("empty array expected"); + + and not: + + if (ptr == NULL || cnt != 0); + BUG("empty array expected"); + - We avoid using braces unnecessarily. I.e. if (bla) { -- 2.26.2.737.gf3227dd3d3