[sheepdog] [PATCH v2 1/2] checkpatch: add more strict checking	for	block comments
    MORITA Kazutaka 
    morita.kazutaka at lab.ntt.co.jp
       
    Mon Mar 25 06:42:58 CET 2013
    
    
  
> +
> +		if ($rawline =~ /^\+.*\*\/\s*$/ &&
> +		    $rawline !~ /^\+.*\/\*/) {
This is a bit complex.  Can we write this as follows?
  if ($line =~ /^\+/ && $rawline =~ /\*\/$/ && $rawline !~ /\/\*/) {
> +			if ($rawline !~ /^\+\s*\*\/\s*$/) {
We already have a check to detect trailing spaces.  How about the
following?
   if ($rawline !~ /^\+\s*\*\/$/) {
> +				# case A and B
> +				WARN("BLOCK_COMMENT_STYLE",
> +				     "[BCS] put the trailing */ on a separate line\n" . $hereprev);
> +			} elsif ($prevrawline =~ /^\+\s*\/\*/ ||
> +				 $rawlines[$linenr - 3] =~ /^\+\s*\/\*/) {
> +				# case C and D
> +				WARN("BLOCK_COMMENT_STYLE",
> +				     "[BCS] don't use block comments for one liner comment\n" . $hereprev);
> +			} else {
> +				# case E
> +				my $ln = $linenr;
> +				while ($rawlines[$ln] !~ /^\+\s*\/\*/) { $ln--; }
We should add a guard like "$ln >= 0" to avoid infinite loop.
> +				if ($rawlines[$ln] !~ /^\+\s*\/\*\s*$/) {
Redundant check of trailing spaces.
  if ($rawlines[$ln] !~ /^\+\s*\/\*$/) {
Thanks,
Kazutaka
    
    
More information about the sheepdog
mailing list