Re: checkpatch: exclude drivers/staging from if with unnecessary parentheses test

From: Andrew Morton
Date: Thu Jan 11 2018 - 20:40:22 EST


On Thu, 11 Jan 2018 17:17:53 -0800 Joe Perches <joe@xxxxxxxxxxx> wrote:

> On Thu, 2018-01-11 at 15:03 -0800, Andrew Morton wrote:
> > On Thu, 11 Jan 2018 12:53:54 -0800 Joe Perches <joe@xxxxxxxxxxx> wrote:
> >
> > > Greg KH doesn't like this test so exclude the staging directory
> > > from the implied --strict only test unless --strict is actually
> > > used on the command-line.
> > >
> >
> > "doesn't like" is rather vague. What is the objection, specifically?
>
> Unnecessary parentheses sometimes make code
> easier to read for those that don't know C
> very well. i.e.: Greg and maybe others too.
>
> > Also, an example of code which has an "if with unnecessary parentheses"
> > would help others understand the decision.
>
> if ((foo == bar) &&
> (baz != qux))
>
> where the parentheses around the comparisons are
> generically unnecessary as the && is a much higher
> precedence than the comparisons.

OK, agree. I too don't like to be doubtfully staring at something
trying to remember the precedence rules.

Within limits. There are of course cases where the parenthesization is
silly (who doesn't know that * is higher than +?). But such
silliness-detection is probably beyond checkpatch ;)