KT-6798 J2K: Needless use of run {} function after converting for-loop

#KT-6798 Fixed
This commit is contained in:
Valentin Kipyatkov
2015-03-26 19:04:05 +03:00
parent 46193f3ef7
commit 6dbb13c32d
28 changed files with 373 additions and 113 deletions
@@ -1,7 +1,5 @@
run {
init()
while (condition()) {
body()
update()
}
init()
while (condition()) {
body()
update()
}
@@ -1,7 +1,5 @@
run {
var i = 0
while (i * 2 <= 10) {
foo(i)
i++
}
var i = 0
while (i * 2 <= 10) {
foo(i)
i++
}
@@ -1,9 +1,7 @@
run {
var i = 0
while (i < 10) {
System.out.println(i)
System.out.println(j)
j++
i++
}
var i = 0
while (i < 10) {
System.out.println(i)
System.out.println(j)
j++
i++
}
@@ -1,11 +1,9 @@
run {
var i = 0
while (i < 0) {
run {
var i = 1
i++
}
j++
var i = 0
while (i < 0) {
run {
var i = 1
i++
}
j++
i++
}
@@ -1,7 +1,5 @@
run {
var i = 0
while (i < 0) {
j++
i++
}
var i = 0
while (i < 0) {
j++
i++
}
@@ -1,7 +1,5 @@
run {
init()
while (true) {
body()
update()
}
init()
while (true) {
body()
update()
}
@@ -1,4 +1,2 @@
run {
init()
while (condition()) body()
}
init()
while (condition()) body()
@@ -1,8 +1,6 @@
run {
var i = 0
while (i < 0) {
return i
j++
i++
}
var i = 0
while (i < 0) {
return i
j++
i++
}
@@ -0,0 +1,11 @@
class A {
void foo() {
for (int i = 1; i < 1000; i *= 2) {
System.out.println(i);
}
for (int i = 1; i < 2000; i *= 2) {
System.out.println(i);
}
}
}
@@ -0,0 +1,17 @@
class A {
fun foo() {
run {
var i = 1
while (i < 1000) {
System.out.println(i)
i *= 2
}
}
var i = 1
while (i < 2000) {
System.out.println(i)
i *= 2
}
}
}
@@ -0,0 +1,11 @@
class A {
void foo() {
for (int i = 1, j = 0; i < 1000; i *= 2, j++) {
System.out.println(i);
}
for (int j = 1; j < 2000; j *= 2) {
System.out.println(j);
}
}
}
@@ -0,0 +1,19 @@
class A {
fun foo() {
run {
var i = 1
var j = 0
while (i < 1000) {
System.out.println(i)
i *= 2
j++
}
}
var j = 1
while (j < 2000) {
System.out.println(j)
j *= 2
}
}
}
@@ -0,0 +1,11 @@
class A {
int i = 1;
void foo() {
for (int i = 1; i < 1000; i *= 2) {
System.out.println(i);
}
i = 10;
}
}
@@ -0,0 +1,15 @@
class A {
var i = 1
fun foo() {
run {
var i = 1
while (i < 1000) {
System.out.println(i)
i *= 2
}
}
i = 10
}
}
@@ -0,0 +1,11 @@
class A {
void foo(boolean p) {
for (int i = 1; i < 1000; i *= 2) {
System.out.println(i);
}
if (p) {
int i = 10
}
}
}
@@ -0,0 +1,15 @@
class A {
fun foo(p: Boolean) {
run {
var i = 1
while (i < 1000) {
System.out.println(i)
i *= 2
}
}
if (p) {
val i = 10
}
}
}
@@ -0,0 +1,11 @@
class A {
void foo(boolean p) {
if (p) {
int i = 10
}
for (int i = 1; i < 1000; i *= 2) {
System.out.println(i);
}
}
}
@@ -0,0 +1,13 @@
class A {
fun foo(p: Boolean) {
if (p) {
val i = 10
}
var i = 1
while (i < 1000) {
System.out.println(i)
i *= 2
}
}
}
@@ -0,0 +1,8 @@
class A {
void foo(boolean p) {
if (p)
for (int i = 1; i < 1000; i *= 2) {
System.out.println(i);
}
}
}
@@ -0,0 +1,11 @@
class A {
fun foo(p: Boolean) {
if (p) {
var i = 1
while (i < 1000) {
System.out.println(i)
i *= 2
}
}
}
}
@@ -1,17 +1,15 @@
public class TestClass {
companion object {
public fun main(args: Array<String>) {
run {
var i = 0
while (i < 10) {
if (i == 4 || i == 8) {
i++
++i
continue
}
System.err.println(i)
var i = 0
while (i < 10) {
if (i == 4 || i == 8) {
i++
++i
continue
}
System.err.println(i)
++i
}
}
}
@@ -1,20 +1,18 @@
public class TestClass {
companion object {
public fun main(args: Array<String>) {
run {
var i = 0
var j = 1
while (i < 10) {
if (i == 4 || i == 8) {
i++
++i
j *= 2
continue
}
System.err.println(j)
var i = 0
var j = 1
while (i < 10) {
if (i == 4 || i == 8) {
i++
++i
j *= 2
continue
}
System.err.println(j)
++i
j *= 2
}
}
}
@@ -1,16 +1,14 @@
public class TestClass {
companion object {
public fun main(args: Array<String>) {
run {
var i = 1
while (i < 1000) {
if (i == 4 || i == 8) {
i *= 2
continue
}
System.err.println(i)
var i = 1
while (i < 1000) {
if (i == 4 || i == 8) {
i *= 2
continue
}
System.err.println(i)
i *= 2
}
}
}
@@ -2,30 +2,26 @@
public class TestClass {
companion object {
public fun main(args: Array<String>) {
run {
var i = 1
@OuterLoop1 @OuterLoop2 while (i < 1000) {
run {
var j = 1
@InnerLoop while (j < 100) {
if (j == 3) {
j *= 3
continue@InnerLoop
}
if (i == j) {
i *= 2
continue@OuterLoop1
}
System.err.println(j)
if (j == 9) {
j *= 3
continue
}
j *= 3
}
var i = 1
@OuterLoop1 @OuterLoop2 while (i < 1000) {
var j = 1
@InnerLoop while (j < 100) {
if (j == 3) {
j *= 3
continue@InnerLoop
}
i *= 2
if (i == j) {
i *= 2
continue@OuterLoop1
}
System.err.println(j)
if (j == 9) {
j *= 3
continue
}
j *= 3
}
i *= 2
}
}
}