C風ではどうしても有効範囲の最後まで使えないんです。
Cの列挙型は整数定数と大差ありませんけど、まともな列挙型を持つ言語としては欠陥と思います。
で、これを避けるために、Pascal風とか、Rangeオブジェクトとか、そういう話をしたいわけで…。

PascalやAdaは、列挙型を配列のインデックスにできるため、ループ変数に列挙型を使う機会が多いように思います。
この言語では配列はどうか知りませんが、flag型が提案されているので、やはり必要に感じます。