On 9/18/19, Gunter Königsmann <gunter@peterpall.de> wrote:
Would it be possible for you to provide backtraces for a few different crashes?
Thanks for your input, now let me explain better: A few days ago I tested with a little different configuration, and the backtrace was just a few frames. Some 'cl_object' pointer had a too low address, and this caused an EXC_BAD_ACCESS some frame after function 'si_pathname_translations()'. What currently happens (witch Xcode 10.2 and the exact same 'arm64-port' branch as on gitlab) is that the backtrace is very long, always exactly 6780 frames; I thought of a blown stack, and didn't look at the highest frames, which indeed point always to the same function; the error condition happens (as above) inside of function 'si_pathname_translations()'. Attached you find the full backtrace; at the end I added a short lldb session, printing some variables. Here the most interesting lines from the lldb session: frame #6777: 0x0000000100cd6c88 repl`si_pathname_translations(narg=2, host=0x000000010250bfc0) at pathname.d:1555:34 1552 for (l = set, set = ECL_NIL; !ecl_endp(l); l = CDR(l)) { 1553 cl_object item = CAR(l); 1554 cl_object from = coerce_to_from_pathname(cl_car(item), host); -> 1555 cl_object to = cl_pathname(cl_cadr(item)); 1556 set = CONS(CONS(from, CONS(to, ECL_NIL)), set); 1557 } 1558 set = cl_nreverse(set); (lldb) print item (cl_object) $0 = 0x00000001013c1931 (lldb) print from (cl_object) $1 = 0x00000000000000db (lldb) print to (cl_object) $2 = 0x0000000100f08a98 As you can see, the value of the 'from' pointer is way too low for a valid 'cl_object' pointer address. (to be continued...)