On 13 September 2015 at 15:23, <cinap_lenrek@felloff.net> wrote:
the problem is v += d propagates the whole expression
to double. so we somehow need to convert v to double,
do the <asop> then convert back but return the double
result.

the type of E1 op=E2 is the same as the type of E1 = E1 op E2,
since the expressions are "equivalent" in the sense of language definitions,
and has the value (and type) of E1 after the assignment,
so the final type is vlong not double (so the type also isn't right).