ifとelseは対等なのか(C系表記)、それともelseはifに従うのか(Ada系表記)ってこと?
Ada系のほうがよさそうだけど、それを無理やり{}に押し込めるのは難しいね。

test(exp)
{
 true:{}
 false: test(exp2)
 {
  true:{}
  false:{}
 }
}

とか問題外かな。