clang mangled names随着时间的推移而变化

时间:2016-10-11 07:08:57

标签: c++ clang name-mangling

我们遇到了一些关于我没有找到任何文档的内容。看来,有很多班级成员等随着时间的推移会得到不同的名字。所以在一天之内,汇编就会给出它,例如,

_ZThn1128_N9TESTCLASS14ContentChangedEv

然后经过一天的开发,它会得到一些不同的前缀,比如

_ZThn1140_N9TESTCLASS14ContentChangedEv

你有什么想法,这里的变化前缀是什么?我想,也许它与行号有某种联系,但不是。其次,我们如何确保,这不会随着时间的推移而变化?前缀肯定只是一些额外的,因为如果我改变那个数字,那么解码的名称保持不变。

提前致谢。

1 个答案:

答案 0 :(得分:4)

_ZThn1128_N9TESTCLASS14ContentChangedEv已解除为non-virtual thunk to TESTCLASS::ContentChanged()This Q&A表明,错位符号名称的更改可能由sizeof基类之一TESTCLASS的更改来规定。