[fpc-pascal] Stack trace different for Windows and Linux

Jonas Maebe jonas at freepascal.org
Tue Jan 24 18:54:13 CET 2017


On 23/01/17 10:17, Terry Mead wrote:
> When compiled and run under Windows it generates the stack trace:
> Runtime error 200 at $00401404
>   $00401404  TEST1,  line 6 of test.pas
>   $00401428  TEST2,  line 11 of test.pas
>   $00401451  main,  line 16 of test.pas
>   $004077D1
>
> Which is what you would expect.  When compiled and run on an ARM
> processor under Linux (Debian Jessie) it generates the stack trace:
> Runtime error 200 at $000101AC
>   $000101AC  TEST2,  line 11 of test.pas
>   $000101E0  main,  line 16 of test.pas
>   $00010118
>
> Ie. it does not contain the reference to the actual line which caused
> the problem.  The first entry is to the return address of the faulting
> procedure.
>
> The same compile options are used for both and include the -gl option.
> FPC version is 2.6.4.

Did you also compile both with -O-? That said, ARM is a lot better 
tested in FPC 3.0 than in 2.6.4, so you may want to try upgrading to 
that version in case -O- doesn't help.


Jonas




More information about the fpc-pascal mailing list