Don't move the condition on the right side of an assignment when the left side may have side effects. Fix #677
before