@@ -3521,39 +3521,39 @@ sub process {
35213521 }
35223522
35233523# check for missing blank lines after declarations
3524- if ($sline =~ / ^\+\s +\S / && # Not at char 1
3524+ if (( $sline =~ / ^\+\s +\S / || $sline =~ / ^ \s + \S / ) && # Not at char 1
35253525 # actual declarations
35263526 ($prevline =~ / ^\+\s +$Declare \s *$Ident \s *[=,;:\[ ]/ ||
35273527 # function pointer declarations
3528- $prevline =~ / ^\+ \s +$Declare \s *\(\s *\*\s *$Ident \s *\)\s *[=,;:\[\( ]/ ||
3528+ $prevline =~ / ^( \+ | \s ) \s +$Declare \s *\(\s *\*\s *$Ident \s *\)\s *[=,;:\[\( ]/ ||
35293529 # foo bar; where foo is some local typedef or #define
3530- $prevline =~ / ^\+ \s +$Ident (?:\s +|\s *\*\s *)$Ident \s *[=,;\[ ]/ ||
3530+ $prevline =~ / ^( \+ | \s ) \s +$Ident (?:\s +|\s *\*\s *)$Ident \s *[=,;\[ ]/ ||
35313531 # known declaration macros
3532- $prevline =~ / ^\+ \s +$declaration_macros / ) &&
3532+ $prevline =~ / ^( \+ | \s ) \s +$declaration_macros / ) &&
35333533 # for "else if" which can look like "$Ident $Ident"
3534- !($prevline =~ / ^\+ \s +$c90_Keywords \b / ||
3534+ !($prevline =~ / ^( \+ | \s ) \s +$c90_Keywords \b / ||
35353535 # other possible extensions of declaration lines
35363536 $prevline =~ / (?:$Compare |$Assignment |$Operators )\s *$ / ||
35373537 # not starting a section or a macro "\" extended line
35383538 $prevline =~ / (?:\{\s *|\\ )$ / ) &&
35393539 # looks like a declaration
3540- !($sline =~ / ^\+ \s +$Declare \s *$Ident \s *[=,;:\[ ]/ ||
3540+ !($sline =~ / ^( \+ | \s ) \s +$Declare \s *$Ident \s *[=,;:\[ ]/ ||
35413541 # function pointer declarations
3542- $sline =~ / ^\+ \s +$Declare \s *\(\s *\*\s *$Ident \s *\)\s *[=,;:\[\( ]/ ||
3542+ $sline =~ / ^( \+ | \s ) \s +$Declare \s *\(\s *\*\s *$Ident \s *\)\s *[=,;:\[\( ]/ ||
35433543 # foo bar; where foo is some local typedef or #define
3544- $sline =~ / ^\+ \s +(?:volatile\s +)?$Ident (?:\s +|\s *\*\s *)$Ident \s *[=,;\[ ]/ ||
3544+ $sline =~ / ^( \+ | \s ) \s +(?:volatile\s +)?$Ident (?:\s +|\s *\*\s *)$Ident \s *[=,;\[ ]/ ||
35453545 # known declaration macros
3546- $sline =~ / ^\+ \s +$declaration_macros / ||
3546+ $sline =~ / ^( \+ | \s ) \s +$declaration_macros / ||
35473547 # start of struct or union or enum
3548- $sline =~ / ^\+ \s +(?:volatile\s +)?(?:static\s +)?(?:const\s +)?(?:union|struct|enum|typedef)\b / ||
3548+ $sline =~ / ^( \+ | \s ) \s +(?:volatile\s +)?(?:static\s +)?(?:const\s +)?(?:union|struct|enum|typedef)\b / ||
35493549 # start or end of block or continuation of declaration
3550- $sline =~ / ^\+ \s +(?:$| [\{\}\.\#\"\?\:\(\[ ])/ ||
3550+ $sline =~ / ^( \+ | \s ) \s +(?:$| [\{\}\.\#\"\?\:\(\[ ])/ ||
35513551 # bitfield continuation
3552- $sline =~ / ^\+ \s +$Ident \s *:\s *\d +\s *[,;]/ ||
3552+ $sline =~ / ^( \+ | \s ) \s +$Ident \s *:\s *\d +\s *[,;]/ ||
35533553 # other possible extensions of declaration lines
3554- $sline =~ / ^\+ \s +\( ?\s *(?:$Compare |$Assignment |$Operators )/ ) &&
3554+ $sline =~ / ^( \+ | \s ) \s +\( ?\s *(?:$Compare |$Assignment |$Operators )/ ) &&
35553555 # indentation of previous and current line are the same
3556- (($prevline =~ / \+ (\s +)\S / ) && $sline =~ / ^\+ $1 \S / )) {
3556+ (($prevline =~ / ^( \+ | \s ) (\s +)\S / ) && $sline =~ / ^( \+ | \s ) $2 \S / )) {
35573557 if (WARN(" LINE_SPACING" ,
35583558 " Missing a blank line after declarations\n " . $hereprev ) &&
35593559 $fix ) {
0 commit comments