I have been wondering for a while; why is using an unacceptable half ;using a colon ;not always permissible? It works by using operators such as while, for, if, elseetc. But it does not work for try, catch, finallyand delegate(probably useful to leave blank).
So, let's do something like this:
while(shouldIWait());
try {
doThing();
} catch { }
But this is not so:
try {
doThing();
} catch;
In my opinion, instead of an empty block, you can always use a half-hour. Why is this limited to certain statements? Is there a real difference between usage { }and ;operators?