checkpatch: Add test for assignment at start of line
Joe Perches
maintainerPATCH 1/1 checkpatch: Add test for assignment at start of line
Kernel style seems to prefer line wrapping an assignment with the assignment operator on the previous line like:
<leading tabs> identifier = expression; over <leading tabs> identifier = expression;
somewhere around a 50:1 ratio
$ git grep -P "[^=]=\s*$" -- "*.[ch]" | wc -l 52008 $ git grep -P "^\s+[\*\/\+\|\%\-]?=[^=>]" | wc -l 1161
So add a --strict test for that condition.
Signed-off-by Joe Perches <[email protected]>
--- scripts/checkpatch.pl | 6 ++++++ 1 file changed, 6 insertions(+)
scripts/checkpatch.pl +6 -0
@@ -3062,6 +3062,12 @@ sub process { } } +# check for assignments on the start of a line + if ($sline =~ /^\+\s+($Assignment)[^=]/) { + CHK("ASSIGNMENT_CONTINUATIONS", + "Assignment operator '$1' should be on the previous line\n" . $hereprev); + } + # check for && or || at the start of a line if ($rawline =~ /^\+\s*(&&|\|\|)/) { CHK("LOGICAL_CONTINUATIONS",