Currently we don't diagnose overflow in a constant expression for the case of compound assignment with remainder as a operand.
In handleIntIntBinOp the arguments LHS and Result can be the same source but in the check for remainder in this function we assigned to Result before checking for overflow. In all the other operations the check is done before Result is assigned to.