>Out of curiosity I made a few minor modifications so that your example would run in VFP6 to see what would happen. I don't get the error in VFP6 (the modified program will give the error as before in VFP9). I do not have VFP8 to test to see if problem occurs in VFP8.
>
>The only other significance I can think of with ampersands would be with macro expansion -- though behavior in VFP6 doesn't seem to indicate anything happening with macros being evaluated. The thing about 254 characters does seem interesting -- it's one character shy of maximum length of "pascal-style" strings (where a single byte is used for length) -- which happens to be the longest C-style string you'd be able to encode within a pascal-style string.
The ampersands in the case where this happened were all surrounded with spaces. Also, the error seems to catch at 253 (IIRC), suggesting that some kind of expansion was taking place. Since it's all somewhere in the internals, we can only guess.