Emacs/gud-gdb: показать местоположение подтверждения при сбое

Когда утверждение в моем коде терпит неудачу, я получаю такую ​​обратную трассировку от gdb:

(gdb) bt
#0  0x00007ffff455b3a5 in __GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007ffff455eb0b in __GI_abort () at abort.c:92
#2  0x00007ffff4553d4d in __GI___assert_fail (
    assertion=0x123136d "<some failed test>", file=<optimized out>, 
    line=1573, function=<optimized out>) at assert.c:81
#3  <the actual place in my code where I called assert>
    ...

Итак, чтобы добраться до фактической точки отказа, мне нужно пройти «up <RET> <RET> <RET>», что кажется немного неэффективным. Есть ли способ настроить gdb для автоматического перехода к # 3 в стеке? Я особенно заинтересован в запуске gdb в emacs, поэтому, если есть способ настроить gud для этого, это тоже сработает.


person Nicholas Bishop    schedule 21.10.2011    source источник


Ответы (1)


Мне нужно идти 'up <RET> <RET> <RET>'

Вместо этого вы можете сделать fr 3.

Есть ли способ настроить gdb для автоматического перехода к # 3 в стеке?

Я так не думаю.

person Employed Russian    schedule 22.10.2011