Frank Heckenbach wrote:
Adriaan van Os wrote:
fjf582.pas Segmentation fault stack overflow (solved with "limit stacksize 2048")
Still? I thought I'd avoided this by using subroutines, but apparently inlining spoiled this attempt. Try adding:
{ FLAG --no-inline-functions }
TEST fjf582.orig.pas: ./test_run: line 202: 2647 Segmentation fault ./"$A_OUT" "$1" TEST fjf582.pas: ./test_run: line 202: 2774 Segmentation fault ./"$A_OUT" "$1"
The backtraces look like this:
Exception: EXC_BAD_ACCESS (0x0001) Codes: KERN_INVALID_ADDRESS (0x0001) at 0xbff7f9b0
Thread 0 Crashed: #0 0x00002650 in Testproc32 (fjf582.orig.pas:98) #1 0x00002650 in Testproc32 (fjf582.orig.pas:98) #2 0x00002fbc in main (fjf582.orig.pas:105) #3 0x00001f44 in _start (crt.c:267) #4 0x00001dc4 in start
Exception: EXC_BAD_ACCESS (0x0001) Codes: KERN_INVALID_ADDRESS (0x0001) at 0xbff7f9d0
Thread 0 Crashed: #0 0x00002be4 in Testproc32 (fjf582.pas:101) #1 0x00003e40 in pascal_main_program (fjf582.pas:106) #2 0x00003fbc in main (fjf582.pas:108) #3 0x000019f4 in _start (crt.c:267) #4 0x00001874 in start
fjf664.pas Segmentation fault stack overflow (solved with "limit stacksize 2048")
Try this one.
TEST fjf664.pas: gpc: Internal error: Illegal instruction (program gpc1) TEST fjf664.orig.pas: gpc: Internal error: Illegal instruction (program gpc1)
Both produce a gpc internal error (not a Segmentation fault as I reported earlier, I apologize).
For fjf664.pas the backtrace looks like this:
Exception: EXC_BAD_ACCESS (0x0001) Codes: KERN_INVALID_ADDRESS (0x0001) at 0xbff7ffd0
Thread 0 Crashed: #0 0x000c4300 in reset_used_flags (emit-rtl.c:2639) #1 0x000c4458 in reset_used_flags (emit-rtl.c:2687) #2 0x000c4458 in reset_used_flags (emit-rtl.c:2687) #3 0x000c4458 in reset_used_flags (emit-rtl.c:2687) #4 0x000c4458 in reset_used_flags (emit-rtl.c:2687) <last line repeats> ....
For fjf664.orig.pas the backtrace looks like this:
Exception: EXC_BAD_ACCESS (0x0001) Codes: KERN_INVALID_ADDRESS (0x0001) at 0xbff7ffd0
Thread 0 Crashed: #0 0x000c4300 in reset_used_flags (emit-rtl.c:2639) #1 0x000c4458 in reset_used_flags (emit-rtl.c:2687) #2 0x000c4458 in reset_used_flags (emit-rtl.c:2687) #3 0x000c4458 in reset_used_flags (emit-rtl.c:2687) <last line repeats> .....
Regards,
Adriaan van Os