GDB核心转储查看容器的内容

时间:2017-03-30 08:04:27

标签: c++ gdb

我在核心转储(第一次)中探索,我对地图m_my_map的元素感兴趣 我可以看到带有info args的地图,但它也提供了以下输出

info args
m_my_map = <error reading variable m_my_map (Unhandled dwarf expression opcode 0xf3)

当我尝试用

查看其内容时
print m_my_map 
Unhandled dwarf expression opcode 0xf3

有没有办法循环地图并打印对?

1 个答案:

答案 0 :(得分:0)

DWARF操作码0xf3来自操作码范围的“用户”区域;但它可能是DW_OP_GNU_entry_value,它是DWARF 4中的GNU扩展(现在在DWARF 5中标准化,但具有不同的值)。

这对您来说意味着您最有可能使用在您使用的GCC版本之前发布的GDB。因此,解决您的问题的方法是升级GDB。执行此操作后,打印地图很可能会有效。