Re: [PATCH] checkpatch.pl: Fix wrong curly bracket position reporting

From: Jean-Baptiste Theou
Date: Wed Dec 18 2013 - 12:43:28 EST


Hi Joe,

Looks good to me, it fix this issue and for sure more global.

Regards,

Jean-Baptiste
On 12/17/2013 09:39 PM, Joe Perches wrote:
On Tue, 2013-12-17 at 18:59 -0800, Jean-Baptiste Theou wrote:
This patch fixes wrong curly bracket position reporting when function
declarations have only one void argument.

Missing error (ERROR: space required before the open brace '{') on this
situation :

int foo(void){
...
}
That's true for any declaration with { on the same line.

Perhaps this would be better:
---
scripts/checkpatch.pl | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 8f3aecd..c4dbb8a 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2784,7 +2784,8 @@ sub process {
# function brace can't be on same line, except for #defines of do while,
# or if closed on same line
- if (($line=~/$Type\s*$Ident\(.*\).*\s{/) and
+ if ($^V && $^V ge 5.10.0 &&
+ ($line=~/$Type\s*$Ident\s*$balanced_parens\s*{\s*$/) &&
!($line=~/\#\s*define.*do\s{/) and !($line=~/}/)) {
ERROR("OPEN_BRACE",
"open brace '{' following function declarations go on the next line\n" . $herecurr);
@@ -3159,7 +3160,9 @@ sub process {
## }
#need space before brace following if, while, etc
- if (($line =~ /\(.*\){/ && $line !~ /\($Type\){/) ||
+ if ($^V && $^V ge 5.10.0 &&
+ ($line !~ /$Type\s*$Ident\s*$balanced_parens\s*{\s*$/) &&
+ ($line =~ /\(.*\){/ && $line !~ /\($Type\){/) ||
$line =~ /do{/) {
if (ERROR("SPACING",
"space required before the open brace '{'\n" . $herecurr) &&



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/