On 07 Dec 2009, at 13:44, Sergey Bochkanov wrote:
occurs with FPC 2.2.4, that is not the case... On the other hand,
have
you tried compiling it with FPC 2.4.0rc1? Maybe the bug is already
fixed.
Yes, I've tried it with 2.4.0.rc1 (see additional note in bugtracker)
- it is still there :(
Tomorrow I'll try with 2.4.0.rc1 under Win64 - to see whether it is
specific for Linix + x86_64 , or appears in x86_64 on any platform.
Everything compiles fine here on Linux/i386 and Linux/x86_64, although
with 2.5.1 (I don't have a 2.4.0 available right now for those
platforms, but on the other hand I can't think of any changes since
2.4.0 was branched off that could influence this). It also compiles
fine on Mac OS X/ppc with 2.4.0rc1.
Looks like that this bug is non-deterministic (see notes in
bugtracker). It depends on presence of files not actually
used/compiled, and it sometimes disappear for unknown reasons. I may
send you VirtualBox image of Ubuntu-64 (I am running Linux under
VirtualBox) if you have difficulties reproducing this bug.
You may want to compile the compiler with debug info: download the
sources, go into the fpc directory and type
make OPT="-O- -gl" all
Afterwards use resulting compiler/ppcx64 to compile the program (you
don't have to install it or so, since you already have the 2.4.0rc1
units installed). You should now get file names and line numbers next
to the backtrace when the compiler crashes.
May be we should try with a small subset of the most stable units? I
can generate build/check scripts for these units and you can try
integrating it into your unit-testing framework. It should be easy
to integrate - it is just a Bash script which subsequently
compiles/runs unit tests (if you use another scripting tool, I may
rewrite scripts).
Our tests are very simple:
a) their file names have to start with "t" and the extension has to be
".pp"
b) if they require special command line options, they have to be
mentioned in the first line of the test program file like this:
{ %opt=-Mdelphi -Si }
c) the test programs have to exit with exit code 0 if they were
successful, and with a non-zero exit code otherwise
The tests are automatically compiled and run by a Makefile (which
compiles/runs all files in our test directories conforming to the
pattern mentioned a) above)
Jonas
_______________________________________________
fpc-devel maillist - [email protected]
http://lists.freepascal.org/mailman/listinfo/fpc-devel