Stephane wrote:
Hi, my name is Stephane, I'm French and BP7 converted... to GNU GPC !
Hi! I'm also coming from BP7, like many of the GPC developers...
I think I found a BUG or something like that... (file linked in ZIP)
The problem is that your string constant was too long, and GPC didn't catch it. So the string extended to the memory area where the array was stored.
This was fixed in a very recent patch which might not be publicly available. Just wait for the next release, and the bug should be gone! This means, you will get a proper error message then. :-)
{Another question :} FOR I:=1 TO 400 DO S[I]:='X';{don't work why ?? (= Fillchar X)}
What error shows up? It works fine with my version (provided, of course, that I declare the variable I). In your originial program, of course, you have the length of the string set to more than 400, so you'll get some "garbage" after the 400 X's if you write the string.
Which GPC version are you using? If it's an older version, this might be an old bug which is fixed by now.
The latest versions can be found at ftp://agnes.dida.physik.uni-essen.de/gnu-pascal/
Anyway, thanks for your bug reports, such reports help to improve GPC.
Frank