Perl 5.22 has deprecated unescaped { inside a regexp, resulting in
warnings:

Unescaped left brace in regex is deprecated, passed through in regex; marked by 
<-- HERE in m/\#\s*define.*do\s{ <-- HERE / at scripts/checkpatch.pl line 3523.
Unescaped left brace in regex is deprecated, passed through in regex; marked by 
<-- HERE in m/\(.*\){ <-- HERE / at scripts/checkpatch.pl line 4035.
Unescaped left brace in regex is deprecated, passed through in regex; marked by 
<-- HERE in m/do{ <-- HERE / at scripts/checkpatch.pl line 4036.
Unescaped left brace in regex is deprecated, passed through in regex; marked by 
<-- HERE in m/^\({ <-- HERE / at scripts/checkpatch.pl line 4483.

Since none of them are a foo{n,m} that actually use { as a metachar, sprinkle
some \ love on it.

While I was at it, I looked for other suspicious occurrences of the string
'{/' as a curly bracket as the last character of a regexp and handed them
a \ as well, though I admit I don't understand why they didn't complain before.

I tested the code with a 'checkpatch.pl -f drivers/staging/*/*.c' and it
still seemed to work and didn't explode.

Signed-off-by: Valdis Kletnieks <valdis.kletni...@vt.edu>

--- scripts/checkpatch.pl.dist  2015-06-19 12:36:56.018759379 -0400
+++ scripts/checkpatch.pl       2015-07-08 00:23:02.026142251 -0400
@@ -1205,7 +1205,7 @@
        my ($stmt) = @_;
 
        $stmt =~ s/(^|\n)./$1/g;
-       $stmt =~ s/^\s*{//;
+       $stmt =~ s/^\s*\{//;
        $stmt =~ s/}\s*$//;
        $stmt =~ s/^\s*//;
        $stmt =~ s/\s*$//;
@@ -3040,7 +3040,7 @@
                        #print "realcnt<$realcnt> ctx_cnt<$ctx_cnt>\n";
                        #print 
"pre<$pre_ctx>\nline<$line>\nctx<$ctx>\nnext<$lines[$ctx_ln - 1]>\n";
 
-                       if ($ctx !~ /{\s*/ && defined($lines[$ctx_ln - 1]) && 
$lines[$ctx_ln - 1] =~ /^\+\s*{/) {
+                       if ($ctx !~ /\{\s*/ && defined($lines[$ctx_ln - 1]) && 
$lines[$ctx_ln - 1] =~ /^\+\s*\{/) {
                                ERROR("OPEN_BRACE",
                                      "that open brace { should be on the 
previous line\n" .
                                        "$here\n$ctx\n$rawlines[$ctx_ln - 
1]\n");
@@ -3084,7 +3084,7 @@
                        my $continuation = 0;
                        my $check = 0;
                        $s =~ s/^.*\bdo\b//;
-                       $s =~ s/^\s*{//;
+                       $s =~ s/^\s*\{//;
                        if ($s =~ s/^\s*\\//) {
                                $continuation = 1;
                        }
@@ -3188,7 +3188,7 @@
                }
 
 # check for initialisation to aggregates open brace on the next line
-               if ($line =~ /^.\s*{/ &&
+               if ($line =~ /^.\s*\{/ &&
                    $prevline =~ /(?:^|[^=])=\s*$/) {
                        if (ERROR("OPEN_BRACE",
                                  "that open brace { should be on the previous 
line\n" . $hereprev) &&
@@ -3519,8 +3519,8 @@
 
 # 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
-                   !($line=~/\#\s*define.*do\s{/) and !($line=~/}/)) {
+               if (($line=~/$Type\s*$Ident\(.*\).*\s*\{/) and
+                   !($line=~/\#\s*define.*do\s\{/) and !($line=~/}/)) {
                        if (ERROR("OPEN_BRACE",
                                  "open brace '{' following function 
declarations go on the next line\n" . $herecurr) &&
                            $fix) {
@@ -3538,7 +3538,7 @@
                }
 
 # open braces for enum, union and struct go on the same line.
-               if ($line =~ /^.\s*{/ &&
+               if ($line =~ /^.\s*\{/ &&
                    $prevline =~ 
/^.\s*(?:typedef\s+)?(enum|union|struct)(?:\s+$Ident)?\s*$/) {
                        if (ERROR("OPEN_BRACE",
                                  "open brace '{' following $1 go on the same 
line\n" . $hereprev) &&
@@ -4032,12 +4032,12 @@
 ##             }
 
 #need space before brace following if, while, etc
-               if (($line =~ /\(.*\){/ && $line !~ /\($Type\){/) ||
-                   $line =~ /do{/) {
+               if (($line =~ /\(.*\)\{/ && $line !~ /\($Type\)\{/) ||
+                   $line =~ /do\{/) {
                        if (ERROR("SPACING",
                                  "space required before the open brace '{'\n" 
. $herecurr) &&
                            $fix) {
-                               $fixed[$fixlinenr] =~ s/^(\+.*(?:do|\))){/$1 {/;
+                               $fixed[$fixlinenr] =~ s/^(\+.*(?:do|\)))\{/$1 
{/;
                        }
                }
 
@@ -4479,8 +4479,8 @@
                            $dstat !~ /^do\s*$Constant\s*while\s*$Constant;?$/ 
&&       # do {...} while (...); // do {...} while (...)
                            $dstat !~ /^for\s*$Constant$/ &&                    
        # for (...)
                            $dstat !~ 
/^for\s*$Constant\s+(?:$Ident|-?$Constant)$/ &&   # for (...) bar()
-                           $dstat !~ /^do\s*{/ &&                              
        # do {...
-                           $dstat !~ /^\({/ &&                                 
        # ({...
+                           $dstat !~ /^do\s*\{/ &&                             
        # do {...
+                           $dstat !~ /^\(\{/ &&                                
                # ({...
                            $ctx !~ 
/^.\s*#\s*define\s+TRACE_(?:SYSTEM|INCLUDE_FILE|INCLUDE_PATH)\b/)
                        {
                                $ctx =~ s/\n*$//;
@@ -4617,7 +4617,7 @@
 
                                        substr($block, 0, length($cond), '');
 
-                                       $seen++ if ($block =~ /^\s*{/);
+                                       $seen++ if ($block =~ /^\s*\{/);
 
                                        #print "cond<$cond> block<$block> 
allowed<$allowed[$allow]>\n";
                                        if (statement_lines($cond) > 1) {


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

Reply via email to