I forgot mentioning about { and }, therefore the lack of them as well.
ctcp *:dcc send:*: $iif($len($nopath($filename)) >= 225,halt) ;comment
'-> this is the only one that, if you say that it works, is an inconsistency or a bug.
;ctcp *:dcc send:*: $iif($len($nopath($filename)) >= 225,halt)
'-> self-explanatory
ctcp *:dcc send:*: ;$iif($len($nopath($filename)) >= 225,halt)
'-> first char: ctcp *:dcc send:*:{ ;$iif($len($nopath($filename)) >= 225,halt) }
Now try "echo -a hi ; bye" and see if what you say applies.
The rule is this, everything else is abnormal.