On Sun, Sep 14, 2008 at 18:45, Arthur Schwarz <aschwarz1309@xxxxxxxxxxx> wrote: > > Thank you both for answering. I don't know what 'UB' is but: > I would have expected operator precedence to force evaluation of the left side of the == operator for complex expressions, and left-to-right associativity to mandate the execution ordering otherwise. My inexperienced interpretation of a post-increment is: > UB is Undefined Behaviour. Operator precedence does not affect the order of evaluation of the arguments to the operation, just as the order of evaluation of arguments to a function call is undefined. You may be interested in this entry in the FAQ Lite: http://www.parashift.com/c++-faq-lite/misc-technical-issues.html#faq-39.15