make '*=' behave properly, and workaround the bug in parsing of real number literals