Messages in this thread Patch in this message | | | From | "Scott J. Goldman" <> | Subject | [PATCH] checkpatch: fix false positive on casting to double pointer | Date | Thu, 17 Jun 2010 13:26:51 -0700 |
| |
Signed-off-by: Scott J. Goldman <scottjg@vmware.com> --- scripts/checkpatch.pl | 4 +++- tests/t/t9190-double-pointers | 6 ++++++ 2 files changed, 9 insertions(+), 1 deletions(-) create mode 100644 tests/t/t9190-double-pointers
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 87bbb8b..687bd6f 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -1982,7 +1982,9 @@ sub process { $op eq '*' or $op eq '/' or $op eq '%') { - if ($ctx =~ /Wx[^WCE]|[^WCE]xW/) { + if ($op eq '*' && $cc =~ /^\*/) { + # double pointer is ok + } elsif ($ctx =~ /Wx[^WCE]|[^WCE]xW/) { ERROR("need consistent spacing around '$op' $at\n" . $hereptr); } diff --git a/tests/t/t9190-double-pointers b/tests/t/t9190-double-pointers new file mode 100644 index 0000000..3f3f7f9 --- /dev/null +++ b/tests/t/t9190-double-pointers @@ -0,0 +1,6 @@ +pass "foo **x;" +pass "x = **y;" +pass "x = (foo **)y;" + +err='"(foo ** )" should be "(foo **)"' +fail "x = (foo ** )y;" "$err" -- 1.6.0.3
| |