Jerry wrote:
I tried to port it to GPC a couple days ago. GPC didn't like my use of label and goto (FORTRAN cruft, used to to exit the program), even thought CW was cool with it. I felt that GPC was wrong in complaining, but usually it's me that's wrong. At the same time, it complained about nonlocal_exit_18.
I replaced the label and goto with an Exit statement--no arguments with Exit. At about the same time I brilliantly replaced StringOf with WriteStr (that's right--I tried to use WriteStr as a function, not a procedure). The original error about the label and goto went away, but I got two errors related to my botched use of WriteStr, followed by the remaining nonlocal_exit_18 error.
Your usage of goto looks fine: there are restrictions on goto usage, but using then to jump to the end of routine is legal. I suspect that you had another error (gpc-20050331 surely complained about StringOf).