Messages in this thread Patch in this message | | | Subject | Re: [PATCH, v2] checkpatch: Warn on code with 6+ tab indentation, remove 80col warning | From | Joe Perches <> | Date | Sat, 04 Feb 2012 11:27:39 -0800 |
| |
On Sat, 2012-02-04 at 20:54 +0200, Pekka Enberg wrote: > On Sat, Feb 4, 2012 at 8:48 PM, Joe Perches <joe@perches.com> wrote: > > There are some truly _ugly_ > 80 char lines that > > people attempt where checkpatch should issue some > > "don't do that" message. > > The practical downsides of the current warning are much more severe. I > personally don't use checkpatch much these days because of the silly > fixed limit.
More likely you developed a keen sense of kernel style appropriateness and don't need any checkpatch nannying.
I don't disagree with something like setting the normally allowed line length to 100 and maybe keeping a --strict limit to 80.
Something like:
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 2b52aeb..7602bce 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -34,6 +34,9 @@ my @ignore = (); my $help = 0; my $configuration_file = ".checkpatch.conf"; +my $max_line_length_warn = 100; # normal cases +my $max_line_length_strict = 80; # when using --strict + sub help { my ($exitcode) = @_; @@ -1726,15 +1729,19 @@ sub process { # check we are in a valid source file if not then ignore this hunk next if ($realfile !~ /\.(h|c|s|S|pl|sh)$/); -#80 column limit +# check line length limit if ($line =~ /^\+/ && $prevrawline !~ /\/\*\*/ && $rawline !~ /^.\s*\*\s*\@$Ident\s/ && !($line =~ /^\+\s*$logFunctions\s*\(\s*(?:(KERN_\S+\s*|[^"]*))?"[X\t]*"\s*(?:|,|\)\s*;)\s*$/ || - $line =~ /^\+\s*"[^"]*"\s*(?:\s*|,|\)\s*;)\s*$/) && - $length > 80) - { - WARN("LONG_LINE", - "line over 80 characters\n" . $herecurr); + $line =~ /^\+\s*"[^"]*"\s*(?:\s*|,|\)\s*;)\s*$/) { + if ($length > $max_line_len_strict) { + CHK("LONG_LINE", + "line over $max_line_len_strict characters\n" . $herecurr); + } + if ($length > $max_line_len_warn) { + WARN("LONG_LINE", + "line over $max_line_len_warn characters\n" . $herecurr); + } } # check for spaces before a quoted newline
| |