@@ -1480,46 +1480,44 @@ private void createAssignment(Statements statements, DefaultStack<Expression> st
14801480 Expression lastExpression = lastStatement .getExpression ();
14811481
14821482 if (lastExpression .isBinaryOperatorExpression ()) {
1483- BinaryOperatorExpression boe = (BinaryOperatorExpression ) lastExpression ;
1484-
1485- if (getLastRightExpression (boe ) == rightExpression ) {
1483+ if (getLastRightExpression (lastExpression ) == rightExpression ) {
14861484 // Multi assignment
1487- lastES .setExpression (new BinaryOperatorExpression (lineNumber , leftExpression .getType (), leftExpression , "=" , boe , 16 ));
1485+ lastES .setExpression (new BinaryOperatorExpression (lineNumber , leftExpression .getType (), leftExpression , "=" , lastExpression , 16 ));
14881486 return ;
14891487 }
14901488
1491- if ((lineNumber > 0 ) && (boe .getLineNumber () == lineNumber ) && (boe .getLeftExpression ().getClass () == rightExpression .getClass ())) {
1492- if (leftExpression .isLocalVariableReferenceExpression ()) {
1493- ClassFileLocalVariableReferenceExpression lvr1 = (ClassFileLocalVariableReferenceExpression ) boe .getLeftExpression ();
1489+ if ((lineNumber > 0 ) && (lastExpression .getLineNumber () == lineNumber ) && (lastExpression .getLeftExpression ().getClass () == rightExpression .getClass ())) {
1490+ if (rightExpression .isLocalVariableReferenceExpression ()) {
1491+ ClassFileLocalVariableReferenceExpression lvr1 = (ClassFileLocalVariableReferenceExpression ) lastExpression .getLeftExpression ();
14941492 ClassFileLocalVariableReferenceExpression lvr2 = (ClassFileLocalVariableReferenceExpression ) rightExpression ;
14951493
14961494 if (lvr1 .getLocalVariable () == lvr2 .getLocalVariable ()) {
14971495 // Multi assignment
1498- lastES .setExpression (new BinaryOperatorExpression (lineNumber , leftExpression .getType (), leftExpression , "=" , boe , 16 ));
1496+ lastES .setExpression (new BinaryOperatorExpression (lineNumber , leftExpression .getType (), leftExpression , "=" , lastExpression , 16 ));
14991497 return ;
15001498 }
1501- } else if (leftExpression .isFieldReferenceExpression ()) {
1502- FieldReferenceExpression fr1 = (FieldReferenceExpression ) boe .getLeftExpression ();
1499+ } else if (rightExpression .isFieldReferenceExpression ()) {
1500+ FieldReferenceExpression fr1 = (FieldReferenceExpression ) lastExpression .getLeftExpression ();
15031501 FieldReferenceExpression fr2 = (FieldReferenceExpression ) rightExpression ;
15041502
15051503 if (fr1 .getName ().equals (fr2 .getName ()) && fr1 .getExpression ().getType ().equals (fr2 .getExpression ().getType ())) {
15061504 // Multi assignment
1507- lastES .setExpression (new BinaryOperatorExpression (lineNumber , leftExpression .getType (), leftExpression , "=" , boe , 16 ));
1505+ lastES .setExpression (new BinaryOperatorExpression (lineNumber , leftExpression .getType (), leftExpression , "=" , lastExpression , 16 ));
15081506 return ;
15091507 }
15101508 }
15111509 }
15121510 } else if (lastExpression .isPreOperatorExpression ()) {
15131511 if (lastExpression .getExpression ().getClass () == rightExpression .getClass ()) {
1514- if (lastExpression . getExpression () .isLocalVariableReferenceExpression ()) {
1512+ if (rightExpression .isLocalVariableReferenceExpression ()) {
15151513 ClassFileLocalVariableReferenceExpression lvr1 = (ClassFileLocalVariableReferenceExpression )lastExpression .getExpression ();
15161514 ClassFileLocalVariableReferenceExpression lvr2 = (ClassFileLocalVariableReferenceExpression )rightExpression ;
15171515
15181516 if (lvr1 .getLocalVariable () == lvr2 .getLocalVariable ()) {
15191517 rightExpression = newPreArithmeticOperatorExpression (lastExpression .getLineNumber (), lastExpression .getOperator (), lastExpression .getExpression ());
15201518 statements .removeLast ();
15211519 }
1522- } else if (lastExpression . getExpression () .isFieldReferenceExpression ()) {
1520+ } else if (rightExpression .isFieldReferenceExpression ()) {
15231521 FieldReferenceExpression fr1 = (FieldReferenceExpression )lastExpression .getExpression ();
15241522 FieldReferenceExpression fr2 = (FieldReferenceExpression )rightExpression ;
15251523
0 commit comments