From my point of view nil is like the infinite in mathematics, so it is not range bounded and operations like nil+1 are impossible, or in the worst case equal to nil again. Once you assigned nil to a pointer the value becomes in range so it can be operated as usual.
Yes, doing arithmetics with NIL is useless. NIL is defined to mean 'not defined'. How can you add something to that? Even if the compiler allows you to do that, the result cannot be predicted.
Jürgen Hestermann. _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal