2011/10/21 Tomas Hajny <xhaj...@hajny.biz> > On 20 Oct 11, at 17:43, Andrew Pennebaker wrote: > > > It's inconsistent and ripe for bugs. > > Array indices may start at any ordinal value (including e.g. > characters, values of enumerated types, etc.), not just 0. Only > dynamic arrays always start at 0 because that is how they have been > "imported" from other languages. > > Tomas > > As said by Thomas, I think we will have to get along with string[1]. However, since I stumbled upon the string[0] mistake more than once, I take the chance to suggest a way to reduce the likelihood of it.
During compilation, by statically checking the indices used to access the string, the compiler could fire a warning (or error?) if a string[0] is found. I think that most of the times the string[0] happens inside a for loop or similar, so a good percentage of these mistakes can be caught. R# > _______________________________________________ > fpc-pascal maillist - fpc-pascal@lists.freepascal.org > http://lists.freepascal.org/mailman/listinfo/fpc-pascal >
_______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal