1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/dist/tools/vera++/scripts/rules/T007.tcl
2020-02-14 14:17:16 +01:00

23 lines
933 B
Tcl
Executable File

#!/usr/bin/tclsh
# Semicolons should not be isolated by spaces or comments from the rest of the code
foreach f [getSourceFileNames] {
foreach t [getTokens $f 1 0 -1 -1 {semicolon}] {
set line [lindex $t 1]
set column [lindex $t 2]
set previousTokens [getTokens $f $line 0 $line $column {}]
if {$previousTokens == {}} {
report $f $line "semicolon is isolated from other tokens"
} else {
set lastToken [lindex $previousTokens end]
set lastName [lindex $lastToken 3]
if {[lsearch {space ccomment} $lastName] != -1} {
set forTokens [getTokens $f $line 0 $line $column {for leftparen}]
if {[list [lindex [lindex $forTokens 0] 3] [lindex [lindex $forTokens 1] 3]] != {for leftparen}} {
report $f $line "semicolon is isolated from other tokens"
}
}
}
}
}