Frank Heckenbach a écrit:
Another memory management bugfix, thanks to Waldek Hebisch. (I've updated the archives on the server again.)
I have downloaded today the new version of gpc-20030830, touched parse.h It compiles under DJGPP with gcc-3.3.1 Running the test suite with EXTRA_TEST_PFLAGS="-gstabs -DMSDOS -DGO32 -D__GO32__" results in the following errors
TEST dialec3.pas: c:/djgpp/b-331-20030830/gnu/gcc-3.31/gcc/p/test/a.out: cannot open file `prn' for writing (No such file or directory (ENOENT)) (error #443 at 177a4) TEST dialec5.pas: c:/djgpp/b-331-20030830/gnu/gcc-3.31/gcc/p/test/a.out: cannot open file `prn' for writing (No such file or directory (ENOENT)) (error #443 at 16b3) TEST dialec6.pas: c:/djgpp/b-331-20030830/gnu/gcc-3.31/gcc/p/test/a.out: cannot open file `prn' for writing (No such file or directory (ENOENT)) (error #443 at 17893) TEST fjf401.pas: failed 1: /etc/a.conf (expected: c:/djgpp/b-331-20030830/gnu/gcc-3.31/gcc/p/test/c:/djgpp/b-331-20030830/gnu/gcc-3.31/gcc/p/test/a.ini) TEST fjf687.pas: failed `foo\' TEST gpctest.pas: Error in RemoveDirSeparator
They were already present in the first version of gpc-20030830, but hidden amongst the many error messages coming from the absence of default defines I have reported. They are not present with gcc-3.2.x
Running the test suite with in addition "-DDJGPP" results in a lot of error messages, each time GPC calls CC1 to compile a C program, e.g.
TEST crttest.pas: <command line>:5:1: warning: "DJGPP" redefined <built-in>:59:1: warning: this is the location of the previous definition OK
As in this case it results frequently (not always) only in a warning.
This confirms that there is a problem with the built-in's in gpc compiled with gcc-3.3.x
gcc knows the default defines DJGPP MSDOS GO32, while gpc do not
Maurice