Repeat blocks have their own scope while If blocks do not, for example.
Yes they do.
Strict If(True) Local y:Int = 4 End If y = 12
That won't compile the y=12 line because y is local to the If block.
Anything which finishes with an End... statement is a block with its own scope. Repeat...Until/Forever, For...Next and While...Wend are blocks too.