Bill Currie wrote:
I've managed to reproduce the error in a smaller file. If I comment out the parameters (or the body of the function) in the implementation section, the error disapears. In the real file, the ReadStr causes an abort when the implementation paramteters are commented out (interface decl same as always).
I cut down the program a bit more to the following:
unit foo; interface procedure x(y:string);
implementation procedure x(y:string); begin read(y) end; end.
Oddly, the bug disappears when deleting "(y:string)" in the 2nd declaration.
BTW: Bill, the ReadStr is not completely the same as BP's Val. Especially, the Err parameter is not handled like in BP, but read in as a second value.
Frank Heckenbach wrote:
BTW: Bill, the ReadStr is not completely the same as BP's Val. Especially, the Err parameter is not handled like in BP, but read in as a second value.
I figured that, I just hadn't got around to removing it from the code yet (I'm currently in the `just get it to compile' stage of the port (my standard procedure, buggy I know:) )), as I just replaced all 'str's with 'ReadStr's.
Bill