>>878
やっぱり>>833で指摘されていることが理解できてない。

> do {
> bool flag = ...
> } while (flag);

今でも合法なコードの意味が変わってしまうからダメなんだよ。
forの拡張や>>812とはそこが違う。