If the assignment operator is a compound assignment operator (an equals sign preceded by a binary operator), then "V OP= E
" (where OP
is a valid binary operator) is transformed into "V = V OP E
". Unlike the fully expanded expression, however, the variable on the left hand side of a compound assignment is only evaluated once. This means that at runtime, the variable expression is evaluated first, then the expression on the right hand side of the assignment.
=
Expression StatementTerminator^
| *
| /
| \
| +
| -
| &