Recursion GDB-防止禁用显示

Recursion GDB-防止禁用显示,recursion,gdb,Recursion,Gdb,正如标题所说,每当gdb试图打印不可访问内存地址的值时,我就会禁用display命令。 像这样: 0x12345678 in My_function () 1: x/8xb $r0 0x1: Disabling display 1 to avoid infinite recursion. warning: Got an error handling event: "Cannot access memory at address 0x1". 所以在下一条指令中,它不会自动显示r0值,至少在

正如标题所说,每当gdb试图打印不可访问内存地址的值时,我就会禁用display命令。 像这样:

0x12345678 in My_function ()
1: x/8xb $r0
0x1:    Disabling display 1 to avoid infinite recursion.
warning: Got an error handling event: "Cannot access memory at address 0x1".
所以在下一条指令中,它不会自动显示r0值,至少在我再次输入之前不会

display /8xb $r0
指挥部。
有没有办法防止gdb在内存地址无效的情况下禁用显示?

你找到解决方案了吗?不幸的是,没有,我从来没有找到这样做的方法:-/@user69818我正在考虑解决这个问题的方法,也许,可以通过定义一个同时具有
display
nexti
(或您需要步进到所需指令的任何命令)的函数来实现:
define display和nexti
display/8xb$r0
nexti
end
。因为我不再处理这些东西,如果可以,请测试它并在这里报告,这样我就可以添加它作为解决方案(如果它有效的话,可能是唯一的一个)。