From 28e0103f62f5f28d597a3ba5692a21b4c372b7b3 Mon Sep 17 00:00:00 2001 From: Alex Tkachman Date: Mon, 5 Sep 2011 15:07:09 +0200 Subject: [PATCH] wow - it is green now --- .../jetbrains/jet/codegen/ExpressionCodegen.java | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/idea/src/org/jetbrains/jet/codegen/ExpressionCodegen.java b/idea/src/org/jetbrains/jet/codegen/ExpressionCodegen.java index 311072dedee..c6781b7b65e 100644 --- a/idea/src/org/jetbrains/jet/codegen/ExpressionCodegen.java +++ b/idea/src/org/jetbrains/jet/codegen/ExpressionCodegen.java @@ -5,7 +5,6 @@ import com.intellij.psi.*; import com.intellij.psi.tree.IElementType; import com.intellij.psi.util.PsiTreeUtil; import gnu.trove.THashSet; -import jet.Range; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.codegen.intrinsics.IntrinsicMethod; import org.jetbrains.jet.codegen.intrinsics.IntrinsicMethods; @@ -542,6 +541,7 @@ public class ExpressionCodegen extends JetVisitor { @Override public StackValue visitFunctionLiteralExpression(JetFunctionLiteralExpression expression, StackValue receiver) { if (bindingContext.get(BindingContext.BLOCK, expression)) { + //noinspection ConstantConditions return generateBlock(expression.getFunctionLiteral().getBodyExpression().getStatements()); } else { @@ -810,7 +810,6 @@ public class ExpressionCodegen extends JetVisitor { DeclarationDescriptor containingDeclaration = propertyDescriptor.getContainingDeclaration(); boolean isStatic = containingDeclaration instanceof NamespaceDescriptorImpl; propertyDescriptor = propertyDescriptor.getOriginal(); - final JetType outType = propertyDescriptor.getOutType(); boolean isInsideClass = !forceInterface && containingDeclaration == contextType(); Method getter; Method setter; @@ -1288,15 +1287,6 @@ public class ExpressionCodegen extends JetVisitor { return generateEqualsForExpressionsOnStack(opToken, leftType, rightType, leftJetType.isNullable(), rightJetType.isNullable()); } - private StackValue genEqualsOnStack(IElementType opToken) { - v.invokevirtual("java/lang/Object", "equals", "(Ljava/lang/Object;)Z"); - if(opToken == JetTokens.EXCLEQ || opToken == JetTokens.EXCLEQEQEQ) { - v.iconst(1); - v.xor(Type.INT_TYPE); - } - return StackValue.onStack(Type.BOOLEAN_TYPE); - } - private StackValue genCmpWithNull(JetExpression exp, Type expType, IElementType opToken) { v.iconst(1); gen(exp, typeMapper.boxType(expType)); @@ -1457,6 +1447,7 @@ public class ExpressionCodegen extends JetVisitor { value.dupReceiver(v, 0); // receiver receiver value.put(lhsType, v); // receiver lhs final IntrinsicMethod intrinsic = (IntrinsicMethod) callable; + //noinspection NullableProblems intrinsic.generate(this, v, lhsType, expression, Arrays.asList(expression.getRight()), null); value.store(v); } @@ -1618,6 +1609,7 @@ public class ExpressionCodegen extends JetVisitor { v.anew(type); // TODO typechecker must verify that we're the outer class of the instance being created + //noinspection ConstantConditions if (classDecl.getContainingDeclaration() instanceof ClassDescriptor) { if(!receiver.type.equals(Type.VOID_TYPE)) { // class object is in receiver