Rick McGuire - 2007-04-03

Logged In: YES
Originator: NO

The test program has a major error in it that makes it seem like data is getting lost, but the source method is working exactly the way it is supposed to. The test program is spreading the .array~of call over several lines. Coded this way, the commas are continuation characters, not argument list delimiters. As a result, the source array is a single element long, consisting of a single character string. Everything after the start of the line comment is just part of the line comment as a result (including the say instruction).

The source method returns everything between the start of the method code and the end of the last recognized executable clause of the method. If the semicolon is code, that is the end of the clause. If the semicolon is omitted, then the end of the clause is the line end. Because the final "Say" was really part of the line comment, it disappeared, but it was never executable code in the first place.