aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoe Perches <joe@perches.com>2014-08-06 19:10:48 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-08-06 21:01:28 -0400
commite2826fd07029e14285c178b41b18f6edc3b15a84 (patch)
tree498d3b5a5434aa0b4ae94cf0708d97650eb8327f
parent8d73e0e7dc18a39b120cb85ec675d59516e0af1a (diff)
checkpatch: warn on unnecessary parentheses around references of foo->bar
Parentheses around &(foo->bar) and *(foo->bar) are unnecessary. Emit a --strict only message on these uses. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rwxr-xr-xscripts/checkpatch.pl8
1 files changed, 8 insertions, 0 deletions
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index df4250a8ad51..9a89a0609bac 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -3491,6 +3491,14 @@ sub process {
3491 } 3491 }
3492 } 3492 }
3493 3493
3494# check unnecessary parentheses around addressof/dereference single $Lvals
3495# ie: &(foo->bar) should be &foo->bar and *(foo->bar) should be *foo->bar
3496
3497 while ($line =~ /(?:[^&]&\s*|\*)\(\s*($Ident\s*(?:$Member\s*)+)\s*\)/g) {
3498 CHK("UNNECESSARY_PARENTHESES",
3499 "Unnecessary parentheses around $1\n" . $herecurr);
3500 }
3501
3494#goto labels aren't indented, allow a single space however 3502#goto labels aren't indented, allow a single space however
3495 if ($line=~/^.\s+[A-Za-z\d_]+:(?![0-9]+)/ and 3503 if ($line=~/^.\s+[A-Za-z\d_]+:(?![0-9]+)/ and
3496 !($line=~/^. [A-Za-z\d_]+:/) and !($line=~/^.\s+default:/)) { 3504 !($line=~/^. [A-Za-z\d_]+:/) and !($line=~/^.\s+default:/)) {