new command cbacktrace (#36), minor improvements for internal frame handling...
new command cbacktrace (#36 (closed)), minor improvements for internal frame handling (now cares for "outer" COBOL frames, too)
Fixes #36 (closed), new command is only registered for GDB 8.3+ (Python Frame-Filter API came with GDB 7.7).
Instead of the old
(gdb) backtrace
#0 0x00007fffe455dc87 in PRG9 (...) at /me/src/a/PRG9.cob:221
#1 0x00007fffb8751edb in PRG4_ (...) at /me/src/STRING.cpy:13
#2 0x00007fffb86f5ec1 in PRG4 () at /me/src/b/PRG4.cob:85
#3 0x00007fffe7499a2e in STARTER_ (...) at /me/src/c/STARTER.cob:189
#4 0x00007fffe745d6f1 in STARTER () at /me/src/c/STARTER.cob:131
#5 0x0000000000401a00 in main (...) at cobcrun.c:421
(gdb) backtrace 2
#0 0x00007fffe455dc87 in PRG9 (...) at /me/src/a/PRG9.cob:221
#1 0x00007fffb8751edb in PRG4_ (...) at /me/src/STRING.cpy:13
(gdb) backtrace -2
#4 0x00007fffe745d6f1 in STARTER () at /me/src/c/STARTER.cob:131
#5 0x0000000000401a00 in main (...) at cobcrun.c:421
(remark, frame 0 allows to "view" the source and set breakpoints, but no variables - it is the outer "shell" that originates from "step" into the CALL or from plain b PRG9
)
we get the new default:
(gdb) backtrace
#0 0x00007fffe455dc87 in PRG9 (...) at /me/src/a/PRG9.cob:221
#1 0x00007fffb8751edb in PRG4_ (...) at /me/src/STRING.cpy:13
#2 0x00007fffb86f5ec1 in PRG4 () at /me/src/b/PRG4.cob:85
#3 0x00007fffe7499a2e in STARTER_ (...) at /me/src/c/STARTER.cob:189
#4 0x00007fffe745d6f1 in STARTER () at /me/src/c/STARTER.cob:131
#5 0x0000000000401a00 in main (...) at cobcrun.c:421
(gdb) backtrace 2
#0 0x00007fffe455dc87 in PRG9 (...) at /me/src/a/PRG9.cob:221
#1 0x00007fffb8751edb in PRG4_ (...) at /me/src/STRING.cpy:13
#2 0x00007fffb86f5ec1 in PRG4 () at /me/src/b/PRG4.cob:85
(gdb) backtrace -2
#3 0x00007fffe7499a2e in STARTER_ (...) at /me/src/c/STARTER.cob:189
#4 0x00007fffe745d6f1 in STARTER () at /me/src/c/STARTER.cob:131
#5 0x0000000000401a00 in main (...) at cobcrun.c:421
and a new command that supports every parameter that backtrace
supports:
(gdb) cbacktrace
#0 0x00007fffe455dc87 in PRG9 (...) at /me/src/a/PRG9.cob:221
#1 PRG4 (...) at /me/src/STRING.cpy:13
#3 STARTER (...) at /me/src/c/STARTER.cob:189
(gdb) cbacktrace 2
#0 0x00007fffe455dc87 in PRG9 (...) at /me/src/a/PRG9.cob:221
#1 PRG4 (...) at /me/src/STRING.cpy:13
(gdb) cbacktrace -2
#1 PRG4 (...) at /me/src/STRING.cpy:13
#3 STARTER (...) at /me/src/c/STARTER.cob:189