JS backend: fixed extra code generation for increment, decrement and operations with assignment.
This commit is contained in:
+2
-2
@@ -21,10 +21,10 @@ import com.google.dart.compiler.backend.js.ast.JsBinaryOperator;
|
||||
import com.google.dart.compiler.backend.js.ast.JsExpression;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.jet.lang.psi.JetBinaryExpression;
|
||||
import org.jetbrains.jet.lang.psi.JetSimpleNameExpression;
|
||||
import org.jetbrains.jet.lang.types.expressions.OperatorConventions;
|
||||
import org.jetbrains.jet.lexer.JetToken;
|
||||
import org.jetbrains.k2js.translate.context.TranslationContext;
|
||||
import org.jetbrains.k2js.translate.reference.ReferenceAccessTranslator;
|
||||
|
||||
import static org.jetbrains.k2js.translate.utils.PsiUtils.getOperationToken;
|
||||
import static org.jetbrains.k2js.translate.utils.PsiUtils.isAssignment;
|
||||
@@ -53,7 +53,7 @@ public final class IntrinsicAssignmentTranslator extends AssignmentTranslator {
|
||||
|
||||
@NotNull
|
||||
private JsExpression translateAsAssignmentOperation() {
|
||||
if (accessTranslator instanceof ReferenceAccessTranslator) {
|
||||
if (expression.getLeft() instanceof JetSimpleNameExpression) {
|
||||
return translateAsPlainAssignmentOperation();
|
||||
}
|
||||
return translateAsAssignToCounterpart();
|
||||
|
||||
+2
-2
@@ -18,11 +18,11 @@ package org.jetbrains.k2js.translate.operation;
|
||||
|
||||
import com.google.dart.compiler.backend.js.ast.*;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.jet.lang.psi.JetSimpleNameExpression;
|
||||
import org.jetbrains.jet.lang.psi.JetUnaryExpression;
|
||||
import org.jetbrains.jet.lexer.JetToken;
|
||||
import org.jetbrains.jet.lexer.JetTokens;
|
||||
import org.jetbrains.k2js.translate.context.TranslationContext;
|
||||
import org.jetbrains.k2js.translate.reference.ReferenceAccessTranslator;
|
||||
|
||||
import static org.jetbrains.k2js.translate.utils.PsiUtils.getOperationToken;
|
||||
import static org.jetbrains.k2js.translate.utils.PsiUtils.isPrefix;
|
||||
@@ -51,7 +51,7 @@ public final class IntrinsicIncrementTranslator extends IncrementTranslator {
|
||||
}
|
||||
|
||||
private boolean isPrimitiveExpressionIncrement() {
|
||||
return accessTranslator instanceof ReferenceAccessTranslator;
|
||||
return expression.getBaseExpression() instanceof JetSimpleNameExpression;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
|
||||
Reference in New Issue
Block a user