| @@ -1092,6 +1092,9 @@ struct JavascriptEngine::RootObject : public DynamicObject | |||||
| if (matchIf (TokenTypes::assign)) { ExpPtr rhs (parseExpression()); return new Assignment (location, lhs, rhs); } | if (matchIf (TokenTypes::assign)) { ExpPtr rhs (parseExpression()); return new Assignment (location, lhs, rhs); } | ||||
| if (matchIf (TokenTypes::plusEquals)) return parseInPlaceOpExpression<AdditionOp> (lhs); | if (matchIf (TokenTypes::plusEquals)) return parseInPlaceOpExpression<AdditionOp> (lhs); | ||||
| if (matchIf (TokenTypes::minusEquals)) return parseInPlaceOpExpression<SubtractionOp> (lhs); | if (matchIf (TokenTypes::minusEquals)) return parseInPlaceOpExpression<SubtractionOp> (lhs); | ||||
| if (matchIf (TokenTypes::timesEquals)) return parseInPlaceOpExpression<MultiplyOp> (lhs); | |||||
| if (matchIf (TokenTypes::divideEquals)) return parseInPlaceOpExpression<DivideOp> (lhs); | |||||
| if (matchIf (TokenTypes::moduloEquals)) return parseInPlaceOpExpression<ModuloOp> (lhs); | |||||
| if (matchIf (TokenTypes::leftShiftEquals)) return parseInPlaceOpExpression<LeftShiftOp> (lhs); | if (matchIf (TokenTypes::leftShiftEquals)) return parseInPlaceOpExpression<LeftShiftOp> (lhs); | ||||
| if (matchIf (TokenTypes::rightShiftEquals)) return parseInPlaceOpExpression<RightShiftOp> (lhs); | if (matchIf (TokenTypes::rightShiftEquals)) return parseInPlaceOpExpression<RightShiftOp> (lhs); | ||||
| @@ -1105,7 +1108,7 @@ struct JavascriptEngine::RootObject : public DynamicObject | |||||
| Expression* parseInPlaceOpExpression (ExpPtr& lhs) | Expression* parseInPlaceOpExpression (ExpPtr& lhs) | ||||
| { | { | ||||
| ExpPtr rhs (parseExpression()); | ExpPtr rhs (parseExpression()); | ||||
| Expression* bareLHS = lhs.get(); // careful - bare pointer is deliberately alised | |||||
| Expression* bareLHS = lhs.get(); // careful - bare pointer is deliberately aliased | |||||
| return new SelfAssignment (location, bareLHS, new OpType (location, lhs, rhs)); | return new SelfAssignment (location, bareLHS, new OpType (location, lhs, rhs)); | ||||
| } | } | ||||