view vera/rules/T005.tcl @ 87:955a9409ab5f

Misc: upgrade json to 2.1.0, closes #627
author David Demelier <markand@malikania.fr>
date Sat, 04 Feb 2017 14:40:20 +0100
parents 0edaba9986ba
children
line wrap: on
line source

#!/usr/bin/tclsh
# Keywords break and continue should be immediately followed by a semicolon

foreach f [getSourceFileNames] {
    foreach t [getTokens $f 1 0 -1 -1 {break continue}] {
        set keyword [lindex $t 0]
        set line [lindex $t 1]
        set column [lindex $t 2]
        set semicolons [getTokens $f $line [expr $column + [string length $keyword]] [expr $line + 1] 0 {semicolon}]
        if {$semicolons == {}} {
            report $f $line "keyword '${keyword}' not immediately followed by a semicolon"
        } else {
            set semColumn [lindex [lindex $semicolons 0] 2]
            if {$semColumn != $column + [string length $keyword]} {
                report $f $line "keyword '${keyword}' not immediately followed by a semicolon"
            }
        }
    }
}