According to Tomas Srb:
procedure Gogo(S:String; var SOut:Str255); begin WriteLn(' Before Error '); SOut:='aha'; { ! ?GPC runtime error: runtime error (#-1) ! } WriteLn(' After Error '); end;
Indeed! Thank you for the report; I will gogo and hunt this bug ...
[...]
S:=Gogo(S); { ! No one call Gogo bat three calls ! } WriteLn(I); { ! I=3 I!=0 }
That's strange because this bug was fixed *before* gpc-2.0 was released; it was present in gpc-1.2 or before. I cannot reproduce it with my current development version, so this bug should disappear when you take a current alpha version of GPC. Look at
ftp://agnes.dida.physik.uni-essen.de/gnu-pascal/alpha/
Hope this helps,
Peter
Dipl.-Phys. Peter Gerwinski, Essen, Germany, free physicist and programmer peter.gerwinski@uni-essen.de - http://home.pages.de/~peter.gerwinski/ [970201] maintainer GNU Pascal - http://home.pages.de/~gnu-pascal/ [970125]