运行 valgrind -v 时,我从 valgrind 收到两个抑制的 dl-hack3-cond-1 错误。我在我的代码中使用了 calloc,但我已确保释放所有内容并设置为 NULL。还确保对每个 calloc 返回进行类型转换。我试图做一些研究来了解错误背后的含义,发现它与动态链接有关,但相关信息也很有限。这是一个类,讲师说我们的 valgrind 运行中不能有任何被抑制的错误。
我听说在 64 位系统上运行时会发生这种情况,这是否属实?感谢您的帮助。
最佳答案
如果你的导师真的这么说,那他们就是傻瓜......
valgrind
附带的默认抑制是有原因的,因为标准系统库中存在一些错误,无论您在自己的代码。
在许多情况下,它们可能是误报,但在任何情况下,valgrind 开发人员都认为它们不是用户可以或不应该尝试做的任何事情,这就是为什么他们将抑制作为默认设置的一部分安装。
也许您的导师的意思是您不应该在自己的代码中有任何被抑制的错误?那将是一个完全合理的要求。
关于c - 2 dl-hack3-cond-1 抑制了 valgrind -v 显示的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16424162/