DavidCrow wrote:
All of this "I expected..." and "it should be..." stuff is pointless
What I mean to imply here is that based on what I have read/know the output should have been so and so.....So may be my understanding of this concept (of calling convention, sequence points) needs to be brushed up....It *could be* my ignorance on the matter, lets see, I'll read more, do more research and see what's missing :)
DavidCrow wrote:
Compiler vendors are free to evaluate such expressions as they wish just so long as all side effects of previous evaluations have been performed at each sequence point.
Expressions....true, but the point here is about "passing variables" and C does specify how to do that: either R-to-L or L-to-R, we can make that selection.
DavidCrow wrote:
In your printf example, the order in which the arguments are evaluated is not specified,
I did not specify that but I m using the default calling convention under which variables are passed R-to-L