Yet another bug: --- type T = (a1, b1=5); var ch: T; begin for ch in T do Writeln(ch); end. --- This leads to runtime error. Note that --- type T = (a1, b1=5); begin Writeln(Succ(a1)); end. --- leads to compile-time error (although I think it should work, but that is a separate topic). -- Alexander S. Klenin