26

在发布版本中,我从 GCC 4.4.7 收到以下信息警告。

注意:使用 -fvar-tracking-assignments 超出了可变跟踪大小限制,重试时不使用

我是否超出了变量跟踪分配支持的变量名长度?
如果是这样,有没有办法调整支持的大小?

4

2 回答 2

28

这只是来自编译器的一个注释,即特定函数的调试信息质量较低,因为您的函数代码太大/复杂,因此变量跟踪达到了哈希表槽的限制。

最大值可能是数百万,并且可以通过某些东西(例如--param=max-vartrack-size=60000000)来提高,但最终编译速度可能会非常慢,或者编译器可能会占用大量内存来计算调试信息位置列表。

因此,除非您在调试代码时遇到问题,否则请忽略该警告。

于 2014-05-06T17:32:54.740 回答
0

我的警告内容为: with -fvar-tracking-assignments, retrying without

如果您关心它链接两次,您可以在 makefile 指令中设置 -fno-var-tracking-assignments 以避免重试。

于 2021-11-11T19:54:03.837 回答