...
These two requirements can be counter-intuitive when expressions contain side effects. Evaluation of the operands proceeds left-to-right, without regard to operator precedence rules and indicative parentheses; evaluation of the operators, however, obeys precedence rules and parentheses.
Expressions should never are forbidden to write to memory that they subsequently read, and they should never are also forbidden to write to any memory twice. Memory Note that memory writing and reading can occur either directly in the expression from assignments or indirectly through side effects in functions called in the expression.
...
EXP30-C. Do not depend on order of evaluation between sequence points | ||||
EXP30-CPP. Do not depend on order of evaluation between sequence points | ||||
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="f4f4fa26c725952e-735c333d-431a46b7-820abc92-a07ea78cb613daa6788f8136"><ac:plain-text-body><![CDATA[ | [ISO/IEC TR 24772:2010 | http://www.aitcnet.org/isai/] | "Side?effects and Order of Evaluation [SAM]" | ]]></ac:plain-text-body></ac:structured-macro> |
...
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="b33056cc601a9cde-3ab08490-404847d9-9a2c93a1-9d3519d2408345d4ae8d598f"><ac:plain-text-body><![CDATA[ | [[JLS 2005 | AA. Bibliography#JLS 05]] | [§15.7, "Evaluation Order" | http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.7] | ]]></ac:plain-text-body></ac:structured-macro> |
|
...