Weird result for modulus operation

Ang Way Chuang wcang@nav6.org
Wed Apr 30 06:58:00 GMT 2008


Andrew Pinski wrote:
> On Tue, Apr 29, 2008 at 8:50 PM, Ang Way Chuang <wcang@nav6.org> wrote:
> 
>>         abc.a = abc.a++ % abc.b;
> 
> You are assigning to abc.a twice without a sequence point inbetween so
> this code is undefined as the order of evaluation of expressions
> without a sequence point is unspecified.
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.
> 
> Thanks,
> Andrew Pinski
> 



More information about the Gcc mailing list