Hello, On Wed, 29 Sep 2004 20:23:13 -0700 (PDT), Alan Mead wrote:
>> while ( (i<=Length(fmt)) and (NOT fmt[i] IN ['0'..'9']) ) do >> inc(i); >First, it seems improper for any syntax to compile (i.e., to fail to >raise a syntax error) and then not execute. It compiles because it has the meaning that David said. The "not" operator is applied to fmt[i]. >Second, I had to track this down by inserting a bunch of lines like >"writeln('Passed 33');". The code was compiled with -gl so I should >see a line number but none is shown. This seems like a bug. >Third, the RTE, "Invalid variant operation" seems inappropriate and >confusing. Again, maybe there's an implicit conversion... (but is it >appropriate?) The "not" operator applies to integers, performing a bitwise not. In your code it's applied to a character, so the conversion is probably from char to integer. Useful when doing f.i. compression or encryption. If it's inappropiate or not, I don't know. -- saludos, Nico Aragón NOTE: na-list address only works for messages coming from lists. Please, write to "nico" at the same domain for direct email. _______________________________________________ fpc-pascal maillist - [EMAIL PROTECTED] http://lists.freepascal.org/mailman/listinfo/fpc-pascal