addr2line中的“鉴别器”是什么?

时间:2013-01-17 14:08:19

标签: c++ c addr2line

在某些程序中运行addr2line时,我在行尾会收到“鉴别器N”注释:

main at /tmp/nsievebits.c:56 (discriminator 3)

手册页没有提到它,快速谷歌搜索似乎主要表明源代码文件,没有明确的解释。这是一些故意无证的功能吗?更重要的是,我应该担心吗?

1 个答案:

答案 0 :(得分:15)

据我了解,当一行上有多个代码路径时,discriminator可能很有用,请参阅更多there。您可以放心地忽略它们,但如果知道如何阅读它们,它们可以为您提供有关堆栈指向的确切位置的非常精确的信息。