[问题] gcc 在 atomic 跟valgrind在Rpi上的bug

楼主: wtchen (没有存在感的人)   2016-10-19 20:24:15
开发平台(Platform): (Ex: Win10, Linux, ...)
RP1 + Raspbian
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
gcc 4.9.2
编译参数:-Wall -pedantic -O3 -std=gnu11 -lpthread
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
pthread
问题(Question):
正在练习写multithread的code
使用gcc编译会有Warning(用clang不会)
跑起来也没问题
可是valgrind显示有memary leakage (我没用malloc)
不知道如何改善
预期的正确结果(Expected Output):
无memory leak
错误结果(Wrong Output):
gcc的Warning如下:
atomic.c:30:9: warning: right-hand operand of comma expression has no effect
[-Wunused-value]
++acnt;
^
atomic.c:32:9: warning: right-hand operand of comma expression has no effect
[-Wunused-value]
作者: longlongint (华哥尔)   2016-10-19 20:45:00
不知道欸 试试看改用 -O2 ?
楼主: wtchen (没有存在感的人)   2016-10-19 20:48:00
用过了,一样有Error如果是RPi+clang去编译,valgrind根本不让我run...看了一下gcc的bugzilla,似乎gcc6才修掉这bug顺便请教,以本case来说需要用volatile修饰i2c_stat?
作者: Bencrie   2016-10-19 22:04:00
那个错误叫存取违规不叫 memory leak

Links booklink

Contact Us: admin [ a t ] ucptt.com