Re: [PATCH] scripts/checkpatch.pl: Only emit LONG_LINE for --strict

From: Joe Perches
Date: Thu Jun 26 2014 - 00:17:03 EST


On Wed, 2014-06-25 at 20:44 -0700, Josh Triplett wrote:
> On Wed, Jun 25, 2014 at 07:33:03PM -0700, Joe Perches wrote:
> > On Wed, 2014-06-25 at 19:24 -0700, Josh Triplett wrote:
> > > On Wed, Jun 25, 2014 at 05:05:07PM -0700, Joe Perches wrote:
> > > > On Wed, 2014-06-25 at 08:46 -0700, Josh Triplett wrote:
> > > > > Regardless of the long-standing debate over line width, checkpatch
> > > > > should not warn about it by default.
> > > >
> > > > I'm not getting involved here.
> > > > I don't care much one way or another.
> > []
> > > I'm not asking you to get involved in the Great Line Length Debate;
> > > that's why I didn't attempt to patch CodingStyle or similar. However, I
> > > think it makes sense for *checkpatch* to stop emitting this warning.
> >
> > I think checkpatch should encourage people to write code in
> > a style that matches CodingStyle as well as the predominant
> > styles used in the rest of the kernel.
>
> Not arguing with that, but in this particular case the warning seems
> counterproductive to that goal, especially compared to the
> DEEP_INDENTATION warning. More subjective or "to taste" issues tend
> to have lower severity in checkpatch. And CodingStyle *already* says
> "unless exceeding 80 columns significantly increases
> readability"

Just some suggestions off the top of my head.

If the goal is to reduce long line lengths, then maybe
more warnings or --strict tests for things like:

long variable names: (pick a length)

some_long_variable_name_with_a_color

consecutive dereferences where a temporary might be better:

foo->bar[baz].member1 = 1;
foo->bar[baz].member2 = 2;

Multiple logical tests on a single line:

foo > bar && baz < quz && etc...

Arguments after column 80
1
1 2 3 4 5 6 7 8 9 0
1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
result = some_long_function(some_arg(arg1, arg2), another_arg(arg3, arg4), 4);

where a single argument of a short length before a
statement terminating ; may be ignored, but a longer
argument list may not.

Long trigraphs:

should be on multiple lines

Comments beyond 80 column

No idea what's right.

etc...


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/