http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56143
--- Comment #3 from Paulo César Pereira de Andrade <pcpa at mandriva dot com.br> 2013-01-30 02:19:09 UTC --- (In reply to comment #1) > *_jit->pc.ui++ = i0 - (_jit->pc.w + 4); > > You have a sequence point issue. This is like doing: > *i++ = i0 - (i + 4); Thanks for the comments. I understand and thought that was the case, but opened the bug report because that code did work on systems with gcc 4.1 up to 4.7.2, and -Wsequence-point does not tell anything, but I agree that triggering the condition to tell the warning is not easy due to the union usage for type punning.