Besides the iRule syntax this looks like a bug with the v10.2.0.1707.0 parser. Using the following iRule I get the error text bellow.
when DNS_REQUEST {
if { [[matchregion] ldns ] equals $My_Region} {
log local0. "Drop"
drop
}
log local0. "Not Dropped"
}
011c0003:3: Rule checker ::tclCheck::checkScript did not complete: invalid command name "checkSimpleArgs 1 2 { BIGIP::checkIpTuple }"
while executing
"{checkSimpleArgs 1 2 { BIGIP::checkIpTuple }} $tokens $index"
("eval" body line 1)
invoked from within
"eval $default {$tokens $index}"
(procedure "checkOption" line 14)
invoked from within
"checkOption {
{ ldns { checkSimpleArgs 1 2}}
} { {checkSimpleArgs 1 2 { BIGIP::checkIpTuple }}} $tree $index"
("eval" body line 1)
invoked from within
"eval $cmd {$tree $index}"
(procedure "tclCheck::analyzeScript" line 89)
invoked from within
"tclCheck::analyzeScript $scriptRange"
(procedure "checkScript" line 5)
invoked from within
"checkScript $range"
("command" arm line 4)
invoked from within
"switch -- $type {
variable {
set range [lindex [lindex [lindex $word 2] 0] 1]
set name [parse getstring $::tclCheck::s..."
(procedure "checkWord" line 4)
invoked from withi