CODING_STYLE, checkpatch: update line length rules

Line lengths above 80 characters do exist.  They are rare, but
they happen from time to time.  An ignored rule is worse than an
exception to the rule, so do the latter.

Some on the list expressed their preference for a soft limit that
is slightly lower than 80 characters, to account for extra characters
in unified diffs (including three-way diffs) and for email quoting.
However, there was no consensus on this so keep the 80-character
soft limit and add a hard limit at 90.

Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Paolo Bonzini 2015-09-07 11:53:02 +02:00
parent 93eb8e31f3
commit 8fbe3d1fcf
2 changed files with 13 additions and 3 deletions

View File

@ -31,7 +31,11 @@ Do not leave whitespace dangling off the ends of lines.
2. Line width 2. Line width
Lines are 80 characters; not longer. Lines should be 80 characters; try not to make them longer.
Sometimes it is hard to do, especially when dealing with QEMU subsystems
that use long function or symbol names. Even in that case, do not make
lines much longer than 80 characters.
Rationale: Rationale:
- Some people like to tile their 24" screens with a 6x4 matrix of 80x24 - Some people like to tile their 24" screens with a 6x4 matrix of 80x24
@ -39,6 +43,8 @@ Rationale:
let them keep doing it. let them keep doing it.
- Code and especially patches is much more readable if limited to a sane - Code and especially patches is much more readable if limited to a sane
line length. Eighty is traditional. line length. Eighty is traditional.
- The four-space indentation makes the most common excuse ("But look
at all that white space on the left!") moot.
- It is the QEMU coding style. - It is the QEMU coding style.
3. Naming 3. Naming

View File

@ -1336,12 +1336,16 @@ sub process {
# check we are in a valid source file if not then ignore this hunk # check we are in a valid source file if not then ignore this hunk
next if ($realfile !~ /\.(h|c|cpp|s|S|pl|py|sh)$/); next if ($realfile !~ /\.(h|c|cpp|s|S|pl|py|sh)$/);
#80 column limit #90 column limit
if ($line =~ /^\+/ && if ($line =~ /^\+/ &&
!($line =~ /^\+\s*"[^"]*"\s*(?:\s*|,|\)\s*;)\s*$/) && !($line =~ /^\+\s*"[^"]*"\s*(?:\s*|,|\)\s*;)\s*$/) &&
$length > 80) $length > 80)
{ {
WARN("line over 80 characters\n" . $herecurr); if ($length > 90) {
ERROR("line over 90 characters\n" . $herecurr);
} else {
WARN("line over 80 characters\n" . $herecurr);
}
} }
# check for spaces before a quoted newline # check for spaces before a quoted newline