How does
a++ + (--a * a++)
evaluate to 12 but
(--a * a++)
evaluates to 4?