Для дальнейшего использования, я только что нашел что-то связанное с этим в документации по gdb 13.1.10 Ограничения точек трассировки , которая говорит, что невозможно собрать результат команды backtrace в точке трассировки, но можно собрать стек, читая что-то вроде *(unsigned char *)$esp@300
. Возможно, вам придется немного адаптироваться: вам может потребоваться прочитать больше байтов, а указатель стека может иметь другое имя (rsp для x86-64)
В противном случае:
>collect *(unsigned char *)$esp@300
'esp' is a pseudo-register; GDB cannot yet trace its contents.