看起来valgrind在检测到内存泄漏时返回非零返回码,即使它们列在抑制文件中也是如此。
没有显示错误但是返回代码是134.这使我在jenkins中的所有构建都失败了...有没有办法绕过这个或者我做错了什么?
答案 0 :(得分:2)
你很可能做错了(或者使用了一个有缺陷的旧版valgrind,下面是刚刚发布的3.12):
valgrind --leak-check=full --errors-for-leak-kinds=all --error-exitcode=33
--suppressions=t.supp ./memcheck/tests/trivialleak
...
==22750== suppressed: 1,000 bytes in 1,000 blocks
...
echo $?
0
虽然没有抑制文件:
valgrind --leak-check=full --errors-for-leak-kinds=all --error-exitcode=33
./memcheck/tests/trivialleak
...
==22760== 1,000 bytes in 1,000 blocks are definitely lost in loss record 1 of 1
...
echo $?
33