diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java index 936b20af22b..27bcb22b9ba 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java @@ -429,9 +429,9 @@ public class ExpressionCodegen extends JetVisitor { gen(expression.getLoopRange(), loopRangeType); v.dup(); - v.invokevirtual("jet/IntRange", "getStartValue", "()I"); + v.invokevirtual("jet/IntRange", "getStart", "()I"); v.store(lookupLocal(parameterDescriptor), Type.INT_TYPE); - v.invokevirtual("jet/IntRange", "getEndValue", "()I"); + v.invokevirtual("jet/IntRange", "getEnd", "()I"); v.store(myEndVar, Type.INT_TYPE); } } diff --git a/idea/testData/codegen/controlStructures/forIntRange.jet b/idea/testData/codegen/controlStructures/forIntRange.jet new file mode 100644 index 00000000000..0fe391123eb --- /dev/null +++ b/idea/testData/codegen/controlStructures/forIntRange.jet @@ -0,0 +1,13 @@ +fun box() : String { + val a = Array(3) + a[0] = "a" + a[1] = "b" + a[2] = "c" + + val result = 0 + for(i in a.indices) { + result += i + } + if (result != 3) return "FAIL" + return "OK" +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/jet/codegen/CodegenTestCase.java b/idea/tests/org/jetbrains/jet/codegen/CodegenTestCase.java index 45731728ffc..1706e71b5e4 100644 --- a/idea/tests/org/jetbrains/jet/codegen/CodegenTestCase.java +++ b/idea/tests/org/jetbrains/jet/codegen/CodegenTestCase.java @@ -63,7 +63,7 @@ public abstract class CodegenTestCase extends LightCodeInsightFixtureTestCase { throw new UnsupportedOperationException(); } - protected void blackBoxFile(String filename) throws Exception { + protected void blackBoxFile(String filename) { loadFile(filename); String actual; try { diff --git a/idea/tests/org/jetbrains/jet/codegen/ControlStructuresTest.java b/idea/tests/org/jetbrains/jet/codegen/ControlStructuresTest.java index 698c668b042..f6da4b65c87 100644 --- a/idea/tests/org/jetbrains/jet/codegen/ControlStructuresTest.java +++ b/idea/tests/org/jetbrains/jet/codegen/ControlStructuresTest.java @@ -1,7 +1,5 @@ package org.jetbrains.jet.codegen; -import jet.typeinfo.TypeInfo; - import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.Arrays; @@ -169,6 +167,10 @@ public class ControlStructuresTest extends CodegenTestCase { blackBoxFile("controlStructures/forNullableIntArray.jet"); } + public void testForIntRange() { + blackBoxFile("controlStructures/forIntRange.jet"); + } + public void testKt237() throws Exception { blackBoxFile("regressions/kt237.jet"); }