Paolo Bonzini wrote:
Ang Way Chuang wrote:
Ang Way Chuang wrote:
Andrew Pinski wrote:
On Tue, Apr 29, 2008 at 9:08 PM, Ang Way Chuang <[EMAIL PROTECTED]> wrote:
Thanks for the speedy reply. But why this code:
int a = 17, b = 16;
a = a++ % 16;
results in a = 2 then? I think I need to know what is sequence
point. I'll
google that.
As I mentioned, the code is undefined so it could be any value.
Is there any flag in gcc that can provide warning to code that relies
on undefined behaviours?
Found it. -Wsequence-point which is enabled by -Wall. But gcc didn't
fart out any warning with -Wall or -Wsequence-point flag :(
You found a bug, it does point out the problem with the second example
here.
Huh? Now you got me confused. Since it is an undefined behaviour, gcc is
free to whatever it likes. Though the answer given by the first and
second examples show inconsistency in gcc in handling the undefined
behaviour. I can't forward to gmane.comp.gcc.devel newsgroup with my
account.
Paolo