Should gdb_backtraces() still work in 8.0?
(gdb) call gdb_backtraces()
Program received signal SIGSEGV, Segmentation fault. 0x0005e0c4 in gdb_backtrace (thread_id=<optimized out>) at /home/pi/Pike-v8.0.10/src/interpret.c:3345 3345 args = DO_NOT_WARN((INT32) MINIMUM(f->num_args, Pike_sp - f->locals)); The program being debugged was signaled while in a function called from GDB. GDB remains in the frame where the signal was received. To change this behavior use "set unwindonsignal on". Evaluation of the expression containing the function (gdb_backtraces) will be abandoned. When the function is done executing, GDB will silently stop.
(gdb) p *f $2 = {refs = 1, args = 1, fun = 9, num_locals = 1, num_args = 1, flags = 0, ident = 0, next = 0x1f7bd84, scope = 0x0, pc = 0x0, return_addr = 0x200336f "\024\217-", locals = 0xb6ac5098, save_sp = 0xb6ac5090, expendible = 0xb6ac5098, save_mark_sp = 0xb6a63000, mark_sp_base = 0xb6a63000, current_object = 0x1f78608, current_program = 0x1f726ec, context = 0x1f858dc, current_storage = 0x1f8ef50 "`\357\370\001\003"} (gdb) p *Pike_interpreter_pointer Cannot access memory at address 0x0
(gdb) info threads Id Target Id Frame * 2 Thread 0xb65c4470 (LWP 19748) "pike" 0xb6e9e250 in nanosleep () from /lib/arm-linux-gnueabihf/libpthread.so.0 1 Thread 0xb6fde000 (LWP 19742) "pike" 0x0005e0c4 in gdb_backtrace (thread_id=<optimized out>) at /home/pi/Pike-v8.0.10/src/interpret.c:3345
Both threads look like normal pike interpreter threads, except the one with the crashed gdb_backtraces() on top.
This is repeatable, but not from just running Hilfe. ARM (Pi).