Fixed #1938 AS3 - shortening + 1 to increment

Fixed #1938 AS3 - implicit coercion of operations
Fixed #1938 AS3 - initproperty compound operators, increment/decrement
This commit is contained in:
Jindra Petřík
2023-01-22 22:15:04 +01:00
parent 8fc3690cb6
commit e69d492953
10 changed files with 335 additions and 349 deletions
@@ -72,10 +72,10 @@ public abstract class BinaryOpItem extends GraphTargetItem implements BinaryOp {
int leftPrecedence = leftSide.getPrecedence();
if (leftPrecedence > precedence && leftPrecedence != GraphTargetItem.NOPRECEDENCE) {
writer.append("(");
leftSide.toString(writer, localData, coerceLeft);
leftSide.toString(writer, localData, ""); //coerceLeft);
writer.append(")");
} else {
leftSide.toString(writer, localData, coerceLeft);
leftSide.toString(writer, localData, ""); //coerceLeft);
}
writer.append(" ");
@@ -85,10 +85,10 @@ public abstract class BinaryOpItem extends GraphTargetItem implements BinaryOp {
int rightPrecedence = rightSide.getPrecedence();
if (rightPrecedence >= precedence && rightPrecedence != GraphTargetItem.NOPRECEDENCE) {
writer.append("(");
rightSide.toString(writer, localData, coerceRight);
rightSide.toString(writer, localData, ""); //coerceRight);
writer.append(")");
} else {
rightSide.toString(writer, localData, coerceRight);
rightSide.toString(writer, localData, ""); //coerceRight);
}
return writer;
}
@@ -53,10 +53,10 @@ public abstract class UnaryOpItem extends GraphTargetItem implements UnaryOp {
if (value != null) {
if (value.getPrecedence() > precedence) {
writer.append("(");
value.toString(writer, localData, coerce);
value.toString(writer, localData, ""); //coerce);
writer.append(")");
} else {
value.toString(writer, localData, coerce);
value.toString(writer, localData, ""); //coerce);
}
} else {
writer.append("null");