On Wed, Nov 4, 2009 at 22:36, Paul Ishenin <webpi...@mail.ru> wrote: > Alexander Klenin wrote: >> >> Yet another bug: >> >> --- >> type T = (a1, b1=5); >> var >> ch: T; >> begin >> for ch in T do Writeln(ch); >> end. >> > > This is caused by the problem in the for-to loop: > > for ch := Low(T) to High(T) do > WriteLn(ch) > > How should I solve the problem in the for-in loop? > > I tried the next way: > ch := Low(T); > while ch <= High(T) do > begin > WriteLn(ch); > inc(ch); > > But it fails the same way.
ch := succ(ch); OTOH, I am not sure -- obviously either Succ or Inc is buggy, but which one? Maybe runtime instead of compile-time error is actually correct? -- Alexander S. Klenin _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel