diff --git a/compiler/testData/cfg-variables/basic/IfWithUninitialized.instructions b/compiler/testData/cfg-variables/basic/IfWithUninitialized.instructions index bc3499991b5..a191b965d22 100644 --- a/compiler/testData/cfg-variables/basic/IfWithUninitialized.instructions +++ b/compiler/testData/cfg-variables/basic/IfWithUninitialized.instructions @@ -17,12 +17,12 @@ L0: r(1) -> r(2) -> mark(1 < 2) - call(<, compareTo|, ) -> + call(1 < 2, compareTo|, ) -> jf(L2|) 3 mark({ use(b) }) USE: in: {b=READ} out: {b=READ} r(b) -> USE: in: {} out: {b=READ} mark(use(b)) - call(use, use|) -> + call(use(b), use|) -> 2 jmp(L3) USE: in: {} out: {} L2: 3 mark({ b = true }) diff --git a/compiler/testData/cfg-variables/basic/IfWithUninitialized.values b/compiler/testData/cfg-variables/basic/IfWithUninitialized.values index 0e88483632f..6961a1c7c86 100644 --- a/compiler/testData/cfg-variables/basic/IfWithUninitialized.values +++ b/compiler/testData/cfg-variables/basic/IfWithUninitialized.values @@ -9,19 +9,19 @@ fun foo() { } } --------------------- -1 : {<: Comparable} NEW: r(1) -> -2 : Int NEW: r(2) -> -1 < 2 : Boolean NEW: call(<, compareTo|, ) -> -b : {<: Any?} NEW: r(b) -> -use(b) : * NEW: call(use, use|) -> -{ use(b) } : * COPY -true : Boolean NEW: r(true) -> -if (1 < 2) { use(b) } else { b = true } : * COPY -{ val b: Boolean if (1 < 2) { use(b) } else { b = true } } : * COPY +1 : {<: Comparable} NEW: r(1) -> +2 : Int NEW: r(2) -> +1 < 2 : Boolean NEW: call(1 < 2, compareTo|, ) -> +b : {<: Any?} NEW: r(b) -> +use(b) : * NEW: call(use(b), use|) -> +{ use(b) } : * COPY +true : Boolean NEW: r(true) -> +if (1 < 2) { use(b) } else { b = true } : * COPY +{ val b: Boolean if (1 < 2) { use(b) } else { b = true } } : * COPY ===================== == use == fun use(vararg a: Any?) = a --------------------- : {<: Array} NEW: magic(vararg a: Any?) -> -a : {<: Array} NEW: r(a) -> -===================== +a : {<: Array} NEW: r(a) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/basic/UsageInFunctionLiteral.instructions b/compiler/testData/cfg-variables/basic/UsageInFunctionLiteral.instructions index c1df1eb55e0..3d96d497e9e 100644 --- a/compiler/testData/cfg-variables/basic/UsageInFunctionLiteral.instructions +++ b/compiler/testData/cfg-variables/basic/UsageInFunctionLiteral.instructions @@ -34,26 +34,26 @@ sink: } --------------------- L3: - 3 INIT: in: {} out: {} - v(x: Int) INIT: in: {} out: {x=D} - magic(x: Int) -> INIT: in: {x=D} out: {x=D} - w(x|) INIT: in: {x=D} out: {x=ID} - 4 mark(val y = x + a use(a)) INIT: in: {x=ID} out: {x=ID} - v(val y = x + a) INIT: in: {x=ID} out: {x=ID, y=D} USE: in: {a=READ, x=READ} out: {a=READ, x=READ} - r(x) -> INIT: in: {x=ID, y=D} out: {x=ID, y=D} USE: in: {a=READ} out: {a=READ, x=READ} + 3 INIT: in: {} out: {} + v(x: Int) INIT: in: {} out: {x=D} + magic(x: Int) -> INIT: in: {x=D} out: {x=D} + w(x|) INIT: in: {x=D} out: {x=ID} + 4 mark(val y = x + a use(a)) INIT: in: {x=ID} out: {x=ID} + v(val y = x + a) INIT: in: {x=ID} out: {x=ID, y=D} USE: in: {a=READ, x=READ} out: {a=READ, x=READ} + r(x) -> INIT: in: {x=ID, y=D} out: {x=ID, y=D} USE: in: {a=READ} out: {a=READ, x=READ} r(a) -> mark(x + a) - call(+, plus|, ) -> - w(y|) INIT: in: {x=ID, y=D} out: {x=ID, y=ID} USE: in: {a=READ} out: {a=READ} - r(a) -> INIT: in: {x=ID, y=ID} out: {x=ID, y=ID} USE: in: {} out: {a=READ} + call(x + a, plus|, ) -> + w(y|) INIT: in: {x=ID, y=D} out: {x=ID, y=ID} USE: in: {a=READ} out: {a=READ} + r(a) -> INIT: in: {x=ID, y=ID} out: {x=ID, y=ID} USE: in: {} out: {a=READ} mark(use(a)) - call(use, use|) -> + call(use(a), use|) -> L4: - 3 INIT: in: {x=ID} out: {x=ID} + 3 INIT: in: {x=ID} out: {x=ID} error: - INIT: in: {} out: {} + INIT: in: {} out: {} sink: - INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} + INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} ===================== == use == fun use(vararg a: Any?) = a diff --git a/compiler/testData/cfg-variables/basic/UsageInFunctionLiteral.values b/compiler/testData/cfg-variables/basic/UsageInFunctionLiteral.values index ef1e6a6e02e..c3cc3ce754e 100644 --- a/compiler/testData/cfg-variables/basic/UsageInFunctionLiteral.values +++ b/compiler/testData/cfg-variables/basic/UsageInFunctionLiteral.values @@ -7,7 +7,7 @@ fun foo() { } } --------------------- -1 : Int NEW: r(1) -> +1 : Int NEW: r(1) -> { (x: Int) -> val y = x + a use(a) } : {<: (Int) -> Array} NEW: r({ (x: Int) -> val y = x + a use(a) }) -> ===================== == anonymous_0 == @@ -16,17 +16,17 @@ fun foo() { use(a) } --------------------- - : Int NEW: magic(x: Int) -> -x : Int NEW: r(x) -> -a : Int NEW: r(a) -> -x + a : Int NEW: call(+, plus|, ) -> -a : {<: Any?} NEW: r(a) -> -use(a) : {<: Array} NEW: call(use, use|) -> -val y = x + a use(a) : {<: Array} COPY + : Int NEW: magic(x: Int) -> +x : Int NEW: r(x) -> +a : Int NEW: r(a) -> +x + a : Int NEW: call(x + a, plus|, ) -> +a : {<: Any?} NEW: r(a) -> +use(a) : {<: Array} NEW: call(use(a), use|) -> +val y = x + a use(a) : {<: Array} COPY ===================== == use == fun use(vararg a: Any?) = a --------------------- : {<: Array} NEW: magic(vararg a: Any?) -> -a : {<: Array} NEW: r(a) -> -===================== +a : {<: Array} NEW: r(a) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/basic/VariablesInitialization.values b/compiler/testData/cfg-variables/basic/VariablesInitialization.values index 1e348df8e2c..30d59ee1152 100644 --- a/compiler/testData/cfg-variables/basic/VariablesInitialization.values +++ b/compiler/testData/cfg-variables/basic/VariablesInitialization.values @@ -6,10 +6,10 @@ fun foo() { 42 } --------------------- -1 : Int NEW: r(1) -> -2 : Int NEW: r(2) -> +1 : Int NEW: r(1) -> +2 : Int NEW: r(2) -> 42 : * NEW: r(42) -> -{ val a = 1 val b: Int b = 2 42 } : * COPY +{ val a = 1 val b: Int b = 2 42 } : * COPY ===================== == bar == fun bar(foo: Foo) { @@ -19,17 +19,17 @@ fun bar(foo: Foo) { } --------------------- : {<: Foo} NEW: magic(foo: Foo) -> -foo : {<: Foo} NEW: r(foo) -> -c : * NEW: r(c|) -> -foo.c : * COPY -foo : {<: Foo} NEW: r(foo) -> -2 : Int NEW: r(2) -> -42 : * NEW: r(42) -> -{ foo.c foo.c = 2 42 } : * COPY +foo : {<: Foo} NEW: r(foo) -> +c : * NEW: r(c|) -> +foo.c : * COPY +foo : {<: Foo} NEW: r(foo) -> +2 : Int NEW: r(2) -> +42 : * NEW: r(42) -> +{ foo.c foo.c = 2 42 } : * COPY ===================== == Foo == trait Foo { var c: Int } --------------------- -===================== +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/basic/VariablesUsage.instructions b/compiler/testData/cfg-variables/basic/VariablesUsage.instructions index e7ef96d159d..ef953fc36a6 100644 --- a/compiler/testData/cfg-variables/basic/VariablesUsage.instructions +++ b/compiler/testData/cfg-variables/basic/VariablesUsage.instructions @@ -14,12 +14,12 @@ L0: w(a|) INIT: in: {a=D} out: {a=ID} USE: in: {a=READ} out: {a=READ} r(a) -> INIT: in: {a=ID} out: {a=ID} USE: in: {a=WRITTEN_AFTER_READ} out: {a=READ} mark(use(a)) - call(use, use|) -> + call(use(a), use|) -> r(2) -> USE: in: {a=WRITTEN_AFTER_READ} out: {a=WRITTEN_AFTER_READ} w(a|) USE: in: {a=READ} out: {a=WRITTEN_AFTER_READ} r(a) -> USE: in: {} out: {a=READ} mark(use(a)) - call(use, use|) -> + call(use(a), use|) -> L1: 1 INIT: in: {} out: {} error: diff --git a/compiler/testData/cfg-variables/basic/VariablesUsage.values b/compiler/testData/cfg-variables/basic/VariablesUsage.values index 92570f6a36e..776f53b1f0f 100644 --- a/compiler/testData/cfg-variables/basic/VariablesUsage.values +++ b/compiler/testData/cfg-variables/basic/VariablesUsage.values @@ -6,13 +6,13 @@ fun foo() { use(a) } --------------------- -1 : Int NEW: r(1) -> -a : Int NEW: r(a) -> -use(a) : * NEW: call(use, use|) -> -2 : Int NEW: r(2) -> -a : Int NEW: r(a) -> -use(a) : * NEW: call(use, use|) -> -{ var a = 1 use(a) a = 2 use(a) } : * COPY +1 : Int NEW: r(1) -> +a : Int NEW: r(a) -> +use(a) : * NEW: call(use(a), use|) -> +2 : Int NEW: r(2) -> +a : Int NEW: r(a) -> +use(a) : * NEW: call(use(a), use|) -> +{ var a = 1 use(a) a = 2 use(a) } : * COPY ===================== == bar == fun bar() { @@ -26,5 +26,5 @@ fun bar() { fun use(a: Int) = a --------------------- : Int NEW: magic(a: Int) -> -a : Int NEW: r(a) -> -===================== +a : Int NEW: r(a) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/bugs/referenceToPropertyInitializer.instructions b/compiler/testData/cfg-variables/bugs/referenceToPropertyInitializer.instructions index ff2efa51a56..35a29ba7825 100644 --- a/compiler/testData/cfg-variables/bugs/referenceToPropertyInitializer.instructions +++ b/compiler/testData/cfg-variables/bugs/referenceToPropertyInitializer.instructions @@ -27,28 +27,28 @@ sink: } --------------------- L3: - 2 INIT: in: {} out: {} - v(x: Int) INIT: in: {} out: {x=D} - magic(x: Int) -> INIT: in: {x=D} out: {x=D} - w(x|) INIT: in: {x=D} out: {x=ID} - 3 mark(sum(x - 1) + x) INIT: in: {x=ID} out: {x=ID} - magic(sum) -> USE: in: {sum=READ, x=READ} out: {sum=READ, x=READ} - r(sum|) -> USE: in: {x=READ} out: {sum=READ, x=READ} + 2 INIT: in: {} out: {} + v(x: Int) INIT: in: {} out: {x=D} + magic(x: Int) -> INIT: in: {x=D} out: {x=D} + w(x|) INIT: in: {x=D} out: {x=ID} + 3 mark(sum(x - 1) + x) INIT: in: {x=ID} out: {x=ID} + magic(sum) -> USE: in: {sum=READ, x=READ} out: {sum=READ, x=READ} + r(sum|) -> USE: in: {x=READ} out: {sum=READ, x=READ} r(x) -> r(1) -> mark(x - 1) - call(-, minus|, ) -> + call(x - 1, minus|, ) -> mark(sum(x - 1)) - call(sum, invoke|, ) -> USE: in: {x=READ} out: {x=READ} - r(x) -> USE: in: {} out: {x=READ} + call(sum(x - 1), invoke|, ) -> USE: in: {x=READ} out: {x=READ} + r(x) -> USE: in: {} out: {x=READ} mark(sum(x - 1) + x) - call(+, plus|, ) -> + call(sum(x - 1) + x, plus|, ) -> L4: 2 error: - INIT: in: {} out: {} + INIT: in: {} out: {} sink: - INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} + INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} ===================== == A == open class A(val a: A) @@ -125,18 +125,18 @@ class TestOther { } --------------------- L0: - 1 INIT: in: {} out: {} - v(val x: Int = x + 1) INIT: in: {} out: {x=D} - magic(x) -> INIT: in: {x=D} out: {x=D} USE: in: {x=READ} out: {x=READ} - r(x|) -> USE: in: {} out: {x=READ} + 1 INIT: in: {} out: {} + v(val x: Int = x + 1) INIT: in: {} out: {x=D} + magic(x) -> INIT: in: {x=D} out: {x=D} USE: in: {x=READ} out: {x=READ} + r(x|) -> USE: in: {} out: {x=READ} r(1) -> mark(x + 1) - call(+, plus|, ) -> - w(x|) INIT: in: {x=D} out: {x=ID} + call(x + 1, plus|, ) -> + w(x|) INIT: in: {x=D} out: {x=ID} L1: - INIT: in: {x=ID} out: {x=ID} + INIT: in: {x=ID} out: {x=ID} error: - INIT: in: {} out: {} + INIT: in: {} out: {} sink: - INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} + INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} ===================== diff --git a/compiler/testData/cfg-variables/bugs/referenceToPropertyInitializer.values b/compiler/testData/cfg-variables/bugs/referenceToPropertyInitializer.values index c877aa87b51..782422b3f7c 100644 --- a/compiler/testData/cfg-variables/bugs/referenceToPropertyInitializer.values +++ b/compiler/testData/cfg-variables/bugs/referenceToPropertyInitializer.values @@ -12,16 +12,16 @@ class TestFunctionLiteral { sum(x - 1) + x } --------------------- - : Int NEW: magic(x: Int) -> - : TestFunctionLiteral NEW: magic(sum) -> -sum : {<: (Int) -> Int} NEW: r(sum|) -> -x : Int NEW: r(x) -> -1 : Int NEW: r(1) -> -x - 1 : Int NEW: call(-, minus|, ) -> -sum(x - 1) : Int NEW: call(sum, invoke|, ) -> -x : Int NEW: r(x) -> -sum(x - 1) + x : Int NEW: call(+, plus|, ) -> -sum(x - 1) + x : Int COPY + : Int NEW: magic(x: Int) -> + : TestFunctionLiteral NEW: magic(sum) -> +sum : {<: (Int) -> Int} NEW: r(sum|) -> +x : Int NEW: r(x) -> +1 : Int NEW: r(1) -> +x - 1 : Int NEW: call(x - 1, minus|, ) -> +sum(x - 1) : Int NEW: call(sum(x - 1), invoke|, ) -> +x : Int NEW: r(x) -> +sum(x - 1) + x : Int NEW: call(sum(x - 1) + x, plus|, ) -> +sum(x - 1) + x : Int COPY ===================== == A == open class A(val a: A) @@ -40,10 +40,10 @@ class TestObjectLiteral { } } --------------------- - : TestObjectLiteral NEW: magic(obj) -> - : TestObjectLiteral NEW: magic(obj) -> -obj : * NEW: r(obj|) -> -obj : {<: A} NEW: r(obj|) -> + : TestObjectLiteral NEW: magic(obj) -> + : TestObjectLiteral NEW: magic(obj) -> +obj : * NEW: r(obj|) -> +obj : {<: A} NEW: r(obj|) -> object: A(obj) { { val x = obj } fun foo() { val y = obj } } : {<: A} NEW: r(object: A(obj) { { val x = obj } fun foo() { val y = obj } }) -> ===================== == foo == @@ -51,7 +51,7 @@ fun foo() { val y = obj } --------------------- - : TestObjectLiteral NEW: magic(obj) -> + : TestObjectLiteral NEW: magic(obj) -> obj : {<: A} NEW: r(obj|) -> ===================== == TestOther == @@ -59,8 +59,8 @@ class TestOther { val x: Int = x + 1 } --------------------- - : TestOther NEW: magic(x) -> -x : Int NEW: r(x|) -> -1 : Int NEW: r(1) -> -x + 1 : Int NEW: call(+, plus|, ) -> -===================== + : TestOther NEW: magic(x) -> +x : Int NEW: r(x|) -> +1 : Int NEW: r(1) -> +x + 1 : Int NEW: call(x + 1, plus|, ) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/bugs/varInitializationInIf.instructions b/compiler/testData/cfg-variables/bugs/varInitializationInIf.instructions index c21437571e3..29d923ca79d 100644 --- a/compiler/testData/cfg-variables/bugs/varInitializationInIf.instructions +++ b/compiler/testData/cfg-variables/bugs/varInitializationInIf.instructions @@ -18,7 +18,7 @@ L0: r(1) -> r(2) -> mark(1 < 2) - call(<, compareTo|, ) -> + call(1 < 2, compareTo|, ) -> jf(L2|) 3 mark({ b = false }) r(false) -> USE: in: {b=WRITTEN_AFTER_READ} out: {b=WRITTEN_AFTER_READ} @@ -29,7 +29,7 @@ L2: r(true) -> USE: in: {b=WRITTEN_AFTER_READ} out: {b=WRITTEN_AFTER_READ} w(b|) INIT: in: {b=D} out: {b=ID} USE: in: {b=READ} out: {b=WRITTEN_AFTER_READ} L3: - 2 error(use, No resolved call) INIT: in: {b=ID} out: {b=ID} USE: in: {b=READ} out: {b=READ} + 2 error(use(b), No resolved call) INIT: in: {b=ID} out: {b=ID} USE: in: {b=READ} out: {b=READ} r(b) -> USE: in: {} out: {b=READ} error(use, No resolved call) mark(use(b)) diff --git a/compiler/testData/cfg-variables/bugs/varInitializationInIf.values b/compiler/testData/cfg-variables/bugs/varInitializationInIf.values index ecec75f8896..0498339c517 100644 --- a/compiler/testData/cfg-variables/bugs/varInitializationInIf.values +++ b/compiler/testData/cfg-variables/bugs/varInitializationInIf.values @@ -10,12 +10,12 @@ fun foo() { use(b) } --------------------- -1 : {<: Comparable} NEW: r(1) -> -2 : Int NEW: r(2) -> -1 < 2 : Boolean NEW: call(<, compareTo|, ) -> -false : Boolean NEW: r(false) -> -true : Boolean NEW: r(true) -> -b : * NEW: r(b) -> -use(b) : * NEW: magic(use(b)|) -> -{ val b: Boolean if (1 < 2) { b = false } else { b = true } use(b) } : * COPY -===================== +1 : {<: Comparable} NEW: r(1) -> +2 : Int NEW: r(2) -> +1 < 2 : Boolean NEW: call(1 < 2, compareTo|, ) -> +false : Boolean NEW: r(false) -> +true : Boolean NEW: r(true) -> +b : * NEW: r(b) -> +use(b) : * NEW: magic(use(b)|) -> +{ val b: Boolean if (1 < 2) { b = false } else { b = true } use(b) } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/bugs/varInitializationInIfInCycle.instructions b/compiler/testData/cfg-variables/bugs/varInitializationInIfInCycle.instructions index 6c56fdbdd94..138fae64e3f 100644 --- a/compiler/testData/cfg-variables/bugs/varInitializationInIfInCycle.instructions +++ b/compiler/testData/cfg-variables/bugs/varInitializationInIfInCycle.instructions @@ -34,7 +34,7 @@ L5 [body entry point]: r(1) -> r(2) -> mark(1 < 2) - call(<, compareTo|, ) -> + call(1 < 2, compareTo|, ) -> jf(L6|) 5 mark({ b = false }) r(false) -> USE: in: {b=WRITTEN_AFTER_READ} out: {b=WRITTEN_AFTER_READ} @@ -47,7 +47,7 @@ L6: L7: 4 r(b) -> INIT: in: {b=ID, i=ID, numbers=ID} out: {b=ID, i=ID, numbers=ID} USE: in: {} out: {b=READ} mark(use(b)) - call(use, use|) -> + call(use(b), use|) -> jmp(L4 [loop entry point]) USE: in: {} out: {} - 3 jmp?(L4 [loop entry point]) L2: diff --git a/compiler/testData/cfg-variables/bugs/varInitializationInIfInCycle.values b/compiler/testData/cfg-variables/bugs/varInitializationInIfInCycle.values index 4893c4066c2..445fa4a735e 100644 --- a/compiler/testData/cfg-variables/bugs/varInitializationInIfInCycle.values +++ b/compiler/testData/cfg-variables/bugs/varInitializationInIfInCycle.values @@ -14,19 +14,19 @@ fun foo(numbers: Collection) { } --------------------- : {<: Collection} NEW: magic(numbers: Collection) -> - : Int NEW: magic(numbers|) -> -numbers : {<: Iterable} NEW: r(numbers) -> -1 : {<: Comparable} NEW: r(1) -> -2 : Int NEW: r(2) -> -1 < 2 : Boolean NEW: call(<, compareTo|, ) -> -false : Boolean NEW: r(false) -> -true : Boolean NEW: r(true) -> -b : {<: Any?} NEW: r(b) -> -use(b) : * NEW: call(use, use|) -> + : Int NEW: magic(numbers|) -> +numbers : {<: Iterable} NEW: r(numbers) -> +1 : {<: Comparable} NEW: r(1) -> +2 : Int NEW: r(2) -> +1 < 2 : Boolean NEW: call(1 < 2, compareTo|, ) -> +false : Boolean NEW: r(false) -> +true : Boolean NEW: r(true) -> +b : {<: Any?} NEW: r(b) -> +use(b) : * NEW: call(use(b), use|) -> ===================== == use == fun use(vararg a: Any?) = a --------------------- : {<: Array} NEW: magic(vararg a: Any?) -> -a : {<: Array} NEW: r(a) -> -===================== +a : {<: Array} NEW: r(a) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/lexicalScopes/doWhileScope.instructions b/compiler/testData/cfg-variables/lexicalScopes/doWhileScope.instructions index 4825042e39c..4d3e42f330a 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/doWhileScope.instructions +++ b/compiler/testData/cfg-variables/lexicalScopes/doWhileScope.instructions @@ -23,7 +23,7 @@ L5 [condition entry point]: r(a) -> r(0) -> mark(a > 0) - call(>, compareTo|, ) -> + call(a > 0, compareTo|, ) -> jt(L2 [loop entry point]|) USE: in: {a=READ} out: {a=READ} L3 [loop exit point]: read (Unit) diff --git a/compiler/testData/cfg-variables/lexicalScopes/doWhileScope.values b/compiler/testData/cfg-variables/lexicalScopes/doWhileScope.values index 6d27274992c..8c988d099c5 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/doWhileScope.values +++ b/compiler/testData/cfg-variables/lexicalScopes/doWhileScope.values @@ -7,11 +7,11 @@ fun foo() { "after" } --------------------- -"before" : * NEW: r("before") -> -2 : Int NEW: r(2) -> -a : {<: Comparable} NEW: r(a) -> -0 : Int NEW: r(0) -> -a > 0 : Boolean NEW: call(>, compareTo|, ) -> -"after" : * NEW: r("after") -> -{ "before" do { var a = 2 } while (a > 0) "after" } : * COPY -===================== +"before" : * NEW: r("before") -> +2 : Int NEW: r(2) -> +a : {<: Comparable} NEW: r(a) -> +0 : Int NEW: r(0) -> +a > 0 : Boolean NEW: call(a > 0, compareTo|, ) -> +"after" : * NEW: r("after") -> +{ "before" do { var a = 2 } while (a > 0) "after" } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/lexicalScopes/forScope.instructions b/compiler/testData/cfg-variables/lexicalScopes/forScope.instructions index a061ddc9d89..7fb24c1479a 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/forScope.instructions +++ b/compiler/testData/cfg-variables/lexicalScopes/forScope.instructions @@ -15,7 +15,7 @@ L0: 3 r(1) -> r(10) -> mark(1..10) - call(.., rangeTo|, ) -> + call(1..10, rangeTo|, ) -> v(i) INIT: in: {} out: {i=D} L3: jmp?(L2) INIT: in: {i=D} out: {i=D} diff --git a/compiler/testData/cfg-variables/lexicalScopes/forScope.values b/compiler/testData/cfg-variables/lexicalScopes/forScope.values index b952b64e1e4..72af443ef98 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/forScope.values +++ b/compiler/testData/cfg-variables/lexicalScopes/forScope.values @@ -7,12 +7,12 @@ fun foo() { "after" } --------------------- - : Int NEW: magic(1..10|) -> -"before" : * NEW: r("before") -> -1 : Int NEW: r(1) -> -10 : Int NEW: r(10) -> -1..10 : {<: Iterable} NEW: call(.., rangeTo|, ) -> -i : Int NEW: r(i) -> -"after" : * NEW: r("after") -> -{ "before" for (i in 1..10) { val a = i } "after" } : * COPY -===================== + : Int NEW: magic(1..10|) -> +"before" : * NEW: r("before") -> +1 : Int NEW: r(1) -> +10 : Int NEW: r(10) -> +1..10 : {<: Iterable} NEW: call(1..10, rangeTo|, ) -> +i : Int NEW: r(i) -> +"after" : * NEW: r("after") -> +{ "before" for (i in 1..10) { val a = i } "after" } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/lexicalScopes/functionLiteralScope.instructions b/compiler/testData/cfg-variables/lexicalScopes/functionLiteralScope.instructions index ad9463aaccc..8ddbfeb6801 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/functionLiteralScope.instructions +++ b/compiler/testData/cfg-variables/lexicalScopes/functionLiteralScope.instructions @@ -38,21 +38,21 @@ sink: } --------------------- L3: - 3 INIT: in: {} out: {} - v(x: Int) INIT: in: {} out: {x=D} - magic(x: Int) -> INIT: in: {x=D} out: {x=D} - w(x|) INIT: in: {x=D} out: {x=ID} - 4 mark(val a = x + b) INIT: in: {x=ID} out: {x=ID} - v(val a = x + b) INIT: in: {x=ID} out: {a=D, x=ID} USE: in: {b=READ, x=READ} out: {b=READ, x=READ} - r(x) -> INIT: in: {a=D, x=ID} out: {a=D, x=ID} USE: in: {b=READ} out: {b=READ, x=READ} - r(b) -> USE: in: {} out: {b=READ} + 3 INIT: in: {} out: {} + v(x: Int) INIT: in: {} out: {x=D} + magic(x: Int) -> INIT: in: {x=D} out: {x=D} + w(x|) INIT: in: {x=D} out: {x=ID} + 4 mark(val a = x + b) INIT: in: {x=ID} out: {x=ID} + v(val a = x + b) INIT: in: {x=ID} out: {a=D, x=ID} USE: in: {b=READ, x=READ} out: {b=READ, x=READ} + r(x) -> INIT: in: {a=D, x=ID} out: {a=D, x=ID} USE: in: {b=READ} out: {b=READ, x=READ} + r(b) -> USE: in: {} out: {b=READ} mark(x + b) - call(+, plus|, ) -> - w(a|) INIT: in: {a=D, x=ID} out: {a=ID, x=ID} + call(x + b, plus|, ) -> + w(a|) INIT: in: {a=D, x=ID} out: {a=ID, x=ID} L4: - 3 INIT: in: {x=ID} out: {x=ID} + 3 INIT: in: {x=ID} out: {x=ID} error: - INIT: in: {} out: {} + INIT: in: {} out: {} sink: - INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} + INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} ===================== diff --git a/compiler/testData/cfg-variables/lexicalScopes/functionLiteralScope.values b/compiler/testData/cfg-variables/lexicalScopes/functionLiteralScope.values index f61f02e1741..a4ace108ae1 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/functionLiteralScope.values +++ b/compiler/testData/cfg-variables/lexicalScopes/functionLiteralScope.values @@ -8,19 +8,19 @@ fun foo() { "after" } --------------------- -"before" : * NEW: r("before") -> -1 : Int NEW: r(1) -> +"before" : * NEW: r("before") -> +1 : Int NEW: r(1) -> { (x: Int) -> val a = x + b } : {<: (Int) -> Unit} NEW: r({ (x: Int) -> val a = x + b }) -> -"after" : * NEW: r("after") -> -{ "before" val b = 1 val f = { (x: Int) -> val a = x + b } "after" } : * COPY +"after" : * NEW: r("after") -> +{ "before" val b = 1 val f = { (x: Int) -> val a = x + b } "after" } : * COPY ===================== == anonymous_0 == { (x: Int) -> val a = x + b } --------------------- - : Int NEW: magic(x: Int) -> -x : Int NEW: r(x) -> -b : Int NEW: r(b) -> -x + b : Int NEW: call(+, plus|, ) -> -===================== + : Int NEW: magic(x: Int) -> +x : Int NEW: r(x) -> +b : Int NEW: r(b) -> +x + b : Int NEW: call(x + b, plus|, ) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/lexicalScopes/ifScope.values b/compiler/testData/cfg-variables/lexicalScopes/ifScope.values index a44dfb6f42b..17731824208 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/ifScope.values +++ b/compiler/testData/cfg-variables/lexicalScopes/ifScope.values @@ -11,9 +11,9 @@ fun foo() { } --------------------- "before" : * NEW: r("before") -> -true : Boolean NEW: r(true) -> -1 : Int NEW: r(1) -> -2 : Int NEW: r(2) -> -"after" : * NEW: r("after") -> -{ "before" if (true) { val a = 1 } else { val b = 2 } "after" } : * COPY -===================== +true : Boolean NEW: r(true) -> +1 : Int NEW: r(1) -> +2 : Int NEW: r(2) -> +"after" : * NEW: r("after") -> +{ "before" if (true) { val a = 1 } else { val b = 2 } "after" } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/lexicalScopes/localClass.values b/compiler/testData/cfg-variables/lexicalScopes/localClass.values index ed7081c546c..e823ea66ff9 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/localClass.values +++ b/compiler/testData/cfg-variables/lexicalScopes/localClass.values @@ -13,17 +13,17 @@ fun foo() { } --------------------- : Int NEW: magic(val x: Int) -> - : A NEW: magic(x) -> -"before" : * NEW: r("before") -> -x : Int NEW: r(x|) -> -"after" : * NEW: r("after") -> -{ "before" class A(val x: Int) { { val a = x } fun foo() { val b = x } } "after" } : * COPY + : A NEW: magic(x) -> +"before" : * NEW: r("before") -> +x : Int NEW: r(x|) -> +"after" : * NEW: r("after") -> +{ "before" class A(val x: Int) { { val a = x } fun foo() { val b = x } } "after" } : * COPY ===================== == foo == fun foo() { val b = x } --------------------- - : A NEW: magic(x) -> + : A NEW: magic(x) -> x : Int NEW: r(x|) -> -===================== +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/lexicalScopes/localFunctionScope.instructions b/compiler/testData/cfg-variables/lexicalScopes/localFunctionScope.instructions index e92d11ab224..00916331af2 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/localFunctionScope.instructions +++ b/compiler/testData/cfg-variables/lexicalScopes/localFunctionScope.instructions @@ -34,21 +34,21 @@ fun local(x: Int) { } --------------------- L3: - 3 INIT: in: {} out: {} - v(x: Int) INIT: in: {} out: {x=D} - magic(x: Int) -> INIT: in: {x=D} out: {x=D} - w(x|) INIT: in: {x=D} out: {x=ID} - 4 mark({ val a = x + b }) INIT: in: {x=ID} out: {x=ID} - v(val a = x + b) INIT: in: {x=ID} out: {a=D, x=ID} USE: in: {b=READ, x=READ} out: {b=READ, x=READ} - r(x) -> INIT: in: {a=D, x=ID} out: {a=D, x=ID} USE: in: {b=READ} out: {b=READ, x=READ} - r(b) -> USE: in: {} out: {b=READ} + 3 INIT: in: {} out: {} + v(x: Int) INIT: in: {} out: {x=D} + magic(x: Int) -> INIT: in: {x=D} out: {x=D} + w(x|) INIT: in: {x=D} out: {x=ID} + 4 mark({ val a = x + b }) INIT: in: {x=ID} out: {x=ID} + v(val a = x + b) INIT: in: {x=ID} out: {a=D, x=ID} USE: in: {b=READ, x=READ} out: {b=READ, x=READ} + r(x) -> INIT: in: {a=D, x=ID} out: {a=D, x=ID} USE: in: {b=READ} out: {b=READ, x=READ} + r(b) -> USE: in: {} out: {b=READ} mark(x + b) - call(+, plus|, ) -> - w(a|) INIT: in: {a=D, x=ID} out: {a=ID, x=ID} + call(x + b, plus|, ) -> + w(a|) INIT: in: {a=D, x=ID} out: {a=ID, x=ID} L4: - 3 INIT: in: {x=ID} out: {x=ID} + 3 INIT: in: {x=ID} out: {x=ID} error: - INIT: in: {} out: {} + INIT: in: {} out: {} sink: - INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} + INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} ===================== diff --git a/compiler/testData/cfg-variables/lexicalScopes/localFunctionScope.values b/compiler/testData/cfg-variables/lexicalScopes/localFunctionScope.values index 463862cd7a5..9fab1f2e7ab 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/localFunctionScope.values +++ b/compiler/testData/cfg-variables/lexicalScopes/localFunctionScope.values @@ -9,17 +9,17 @@ fun foo() { } --------------------- "before" : * NEW: r("before") -> -1 : Int NEW: r(1) -> -"after" : * NEW: r("after") -> -{ "before" val b = 1 fun local(x: Int) { val a = x + b } "after" } : * COPY +1 : Int NEW: r(1) -> +"after" : * NEW: r("after") -> +{ "before" val b = 1 fun local(x: Int) { val a = x + b } "after" } : * COPY ===================== == local == fun local(x: Int) { val a = x + b } --------------------- - : Int NEW: magic(x: Int) -> -x : Int NEW: r(x) -> -b : Int NEW: r(b) -> -x + b : Int NEW: call(+, plus|, ) -> -===================== + : Int NEW: magic(x: Int) -> +x : Int NEW: r(x) -> +b : Int NEW: r(b) -> +x + b : Int NEW: call(x + b, plus|, ) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/lexicalScopes/localFunctionScopeWithoutBody.instructions b/compiler/testData/cfg-variables/lexicalScopes/localFunctionScopeWithoutBody.instructions index 6053403f52c..c9327ca5587 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/localFunctionScopeWithoutBody.instructions +++ b/compiler/testData/cfg-variables/lexicalScopes/localFunctionScopeWithoutBody.instructions @@ -30,18 +30,18 @@ sink: fun local(x: Int) = x + b --------------------- L3: - 3 INIT: in: {} out: {} - v(x: Int) INIT: in: {} out: {x=D} - magic(x: Int) -> INIT: in: {x=D} out: {x=D} - w(x|) INIT: in: {x=D} out: {x=ID} USE: in: {b=READ, x=READ} out: {b=READ, x=READ} - r(x) -> INIT: in: {x=ID} out: {x=ID} USE: in: {b=READ} out: {b=READ, x=READ} - r(b) -> USE: in: {} out: {b=READ} + 3 INIT: in: {} out: {} + v(x: Int) INIT: in: {} out: {x=D} + magic(x: Int) -> INIT: in: {x=D} out: {x=D} + w(x|) INIT: in: {x=D} out: {x=ID} USE: in: {b=READ, x=READ} out: {b=READ, x=READ} + r(x) -> INIT: in: {x=ID} out: {x=ID} USE: in: {b=READ} out: {b=READ, x=READ} + r(b) -> USE: in: {} out: {b=READ} mark(x + b) - call(+, plus|, ) -> + call(x + b, plus|, ) -> L4: error: - INIT: in: {} out: {} + INIT: in: {} out: {} sink: - INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} + INIT: in: {x=ID} out: {x=ID} USE: in: {} out: {} ===================== diff --git a/compiler/testData/cfg-variables/lexicalScopes/localFunctionScopeWithoutBody.values b/compiler/testData/cfg-variables/lexicalScopes/localFunctionScopeWithoutBody.values index e94e97e60da..004ccc35db5 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/localFunctionScopeWithoutBody.values +++ b/compiler/testData/cfg-variables/lexicalScopes/localFunctionScopeWithoutBody.values @@ -7,15 +7,15 @@ fun foo() { } --------------------- "before" : * NEW: r("before") -> -1 : Int NEW: r(1) -> -"after" : * NEW: r("after") -> -{ "before" val b = 1 fun local(x: Int) = x + b "after" } : * COPY +1 : Int NEW: r(1) -> +"after" : * NEW: r("after") -> +{ "before" val b = 1 fun local(x: Int) = x + b "after" } : * COPY ===================== == local == fun local(x: Int) = x + b --------------------- - : Int NEW: magic(x: Int) -> -x : Int NEW: r(x) -> -b : Int NEW: r(b) -> -x + b : Int NEW: call(+, plus|, ) -> -===================== + : Int NEW: magic(x: Int) -> +x : Int NEW: r(x) -> +b : Int NEW: r(b) -> +x + b : Int NEW: call(x + b, plus|, ) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/lexicalScopes/localObject.values b/compiler/testData/cfg-variables/lexicalScopes/localObject.values index f1d5201cf33..32867834b21 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/localObject.values +++ b/compiler/testData/cfg-variables/lexicalScopes/localObject.values @@ -13,9 +13,9 @@ fun foo() { } --------------------- "before" : * NEW: r("before") -> -1 : Int NEW: r(1) -> -"after" : * NEW: r("after") -> -{ "before" object A { { val a = 1 } fun foo() { val b = 2 } } "after" } : * COPY +1 : Int NEW: r(1) -> +"after" : * NEW: r("after") -> +{ "before" object A { { val a = 1 } fun foo() { val b = 2 } } "after" } : * COPY ===================== == foo == fun foo() { @@ -23,4 +23,4 @@ fun foo() { } --------------------- 2 : Int NEW: r(2) -> -===================== +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/lexicalScopes/objectLiteralScope.values b/compiler/testData/cfg-variables/lexicalScopes/objectLiteralScope.values index d27c79aa726..4e17237c7ca 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/objectLiteralScope.values +++ b/compiler/testData/cfg-variables/lexicalScopes/objectLiteralScope.values @@ -12,11 +12,11 @@ fun foo() { "after" } --------------------- -"before" : * NEW: r("before") -> -1 : Int NEW: r(1) -> +"before" : * NEW: r("before") -> +1 : Int NEW: r(1) -> object { { val x = 1 } fun foo() { val a = 2 } } : NEW: r(object { { val x = 1 } fun foo() { val a = 2 } }) -> -"after" : * NEW: r("after") -> -{ "before" val bar = object { { val x = 1 } fun foo() { val a = 2 } } "after" } : * COPY +"after" : * NEW: r("after") -> +{ "before" val bar = object { { val x = 1 } fun foo() { val a = 2 } } "after" } : * COPY ===================== == foo == fun foo() { @@ -24,4 +24,4 @@ fun foo() { } --------------------- 2 : Int NEW: r(2) -> -===================== +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/lexicalScopes/propertyAccessorScope.values b/compiler/testData/cfg-variables/lexicalScopes/propertyAccessorScope.values index 8071beeb5a4..b88e99490fe 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/propertyAccessorScope.values +++ b/compiler/testData/cfg-variables/lexicalScopes/propertyAccessorScope.values @@ -17,7 +17,7 @@ get() { return $a } --------------------- - : A NEW: magic($a) -> + : A NEW: magic($a) -> $a : Int NEW: r($a|) -> ===================== == set_a == @@ -26,6 +26,6 @@ set(v: Int) { } --------------------- : Int NEW: magic(v: Int) -> - : A NEW: magic($a) -> -v : Int NEW: r(v) -> -===================== + : A NEW: magic($a) -> +v : Int NEW: r(v) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg-variables/lexicalScopes/tryScope.instructions b/compiler/testData/cfg-variables/lexicalScopes/tryScope.instructions index 32daea6c4c6..55659e62330 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/tryScope.instructions +++ b/compiler/testData/cfg-variables/lexicalScopes/tryScope.instructions @@ -23,7 +23,7 @@ L0: jmp?(L3 [onExceptionToFinallyBlock]) 3 mark({ foo() }) mark(foo()) - call(foo, foo) -> + call(foo(), foo) -> 2 jmp(L4 [afterCatches]) USE: in: {} out: {} L2 [onException]: 3 v(e: Exception) INIT: in: {} out: {e=D} diff --git a/compiler/testData/cfg-variables/lexicalScopes/tryScope.values b/compiler/testData/cfg-variables/lexicalScopes/tryScope.values index e5b41213573..40b7f16f8c9 100644 --- a/compiler/testData/cfg-variables/lexicalScopes/tryScope.values +++ b/compiler/testData/cfg-variables/lexicalScopes/tryScope.values @@ -14,12 +14,12 @@ fun foo() { } --------------------- : {<: Exception} NEW: magic(e: Exception) -> -"before" : * NEW: r("before") -> -foo() : * NEW: call(foo, foo) -> -{ foo() } : * COPY -e : {<: Exception} NEW: r(e) -> -1 : Int NEW: r(1) -> -try { foo() } catch (e: Exception) { val a = e } finally { val a = 1 } : * COPY -"after" : * NEW: r("after") -> -{ "before" try { foo() } catch (e: Exception) { val a = e } finally { val a = 1 } "after" } : * COPY -===================== +"before" : * NEW: r("before") -> +foo() : * NEW: call(foo(), foo) -> +{ foo() } : * COPY +e : {<: Exception} NEW: r(e) -> +1 : Int NEW: r(1) -> +try { foo() } catch (e: Exception) { val a = e } finally { val a = 1 } : * COPY +"after" : * NEW: r("after") -> +{ "before" try { foo() } catch (e: Exception) { val a = e } finally { val a = 1 } "after" } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/arrays/ArrayAccess.instructions b/compiler/testData/cfg/arrays/ArrayAccess.instructions index 0e7994e6ff5..f9a62ea22ec 100644 --- a/compiler/testData/cfg/arrays/ArrayAccess.instructions +++ b/compiler/testData/cfg/arrays/ArrayAccess.instructions @@ -14,7 +14,7 @@ L0: 2 mark({ val a = Array 3 a[10] = 4 2 a[10] 100 a[10] += 1 }) v(val a = Array) mark(Array) - call(Array, ) -> + call(Array, ) -> w(a|) r(3) -> mark(a[10]) @@ -36,7 +36,7 @@ L0: call(a[10], get|, ) -> r(1) -> mark(a[10] += 1) - call(+=, plus|, ) -> + call(a[10] += 1, plus|, ) -> r(a) -> r(10) -> call(a[10] += 1, set|, , ) -> diff --git a/compiler/testData/cfg/arrays/ArrayAccess.values b/compiler/testData/cfg/arrays/ArrayAccess.values index 5d5de2ce4ef..a9cc8964bbd 100644 --- a/compiler/testData/cfg/arrays/ArrayAccess.values +++ b/compiler/testData/cfg/arrays/ArrayAccess.values @@ -9,21 +9,21 @@ fun foo() { a[10] += 1 } --------------------- -Array : {<: Array} NEW: call(Array, ) -> -3 : * NEW: r(3) -> -a : {<: Array} NEW: r(a) -> -10 : Int NEW: r(10) -> -4 : Int NEW: r(4) -> -a[10] = 4 : * NEW: call(a[10] = 4, set|, , ) -> -2 : * NEW: r(2) -> -a : {<: Array} NEW: r(a) -> -10 : Int NEW: r(10) -> -a[10] : * NEW: call(a[10], get|, ) -> -100 : * NEW: r(100) -> -a : {<: Array} NEW: r(a) -> -10 : Int NEW: r(10) -> -a[10] : Int NEW: call(a[10], get|, ) -> -1 : Int NEW: r(1) -> +Array : {<: Array} NEW: call(Array, ) -> +3 : * NEW: r(3) -> +a : {<: Array} NEW: r(a) -> +10 : Int NEW: r(10) -> +4 : Int NEW: r(4) -> +a[10] = 4 : * NEW: call(a[10] = 4, set|, , ) -> +2 : * NEW: r(2) -> +a : {<: Array} NEW: r(a) -> +10 : Int NEW: r(10) -> +a[10] : * NEW: call(a[10], get|, ) -> +100 : * NEW: r(100) -> +a : {<: Array} NEW: r(a) -> +10 : Int NEW: r(10) -> +a[10] : Int NEW: call(a[10], get|, ) -> +1 : Int NEW: r(1) -> a[10] += 1 : * NEW: call(a[10] += 1, set|, , ) -> -{ val a = Array 3 a[10] = 4 2 a[10] 100 a[10] += 1 } : * COPY +{ val a = Array 3 a[10] = 4 2 a[10] 100 a[10] += 1 } : * COPY ===================== diff --git a/compiler/testData/cfg/arrays/ArrayOfFunctions.instructions b/compiler/testData/cfg/arrays/ArrayOfFunctions.instructions index 94932e91ba4..a367b25e03a 100644 --- a/compiler/testData/cfg/arrays/ArrayOfFunctions.instructions +++ b/compiler/testData/cfg/arrays/ArrayOfFunctions.instructions @@ -16,11 +16,11 @@ L0: call(array[11], get|, ) -> r(3) -> mark(array[11](3)) - call(array[11], invoke|, ) -> + call(array[11](3), invoke|, ) -> L1: - 1 NEXT:[] + 1 NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== diff --git a/compiler/testData/cfg/arrays/ArrayOfFunctions.values b/compiler/testData/cfg/arrays/ArrayOfFunctions.values index b6519f642b4..7720f1b5017 100644 --- a/compiler/testData/cfg/arrays/ArrayOfFunctions.values +++ b/compiler/testData/cfg/arrays/ArrayOfFunctions.values @@ -8,6 +8,6 @@ array : {<: Array<(Int) -> Unit>} NEW: r(array) -> 11 : Int NEW: r(11) -> array[11] : {<: (Int) -> Unit} NEW: call(array[11], get|, ) -> 3 : Int NEW: r(3) -> -array[11](3) : * NEW: call(array[11], invoke|, ) -> +array[11](3) : * NEW: call(array[11](3), invoke|, ) -> { array[11](3) } : * COPY ===================== diff --git a/compiler/testData/cfg/arrays/arrayAccessExpression.instructions b/compiler/testData/cfg/arrays/arrayAccessExpression.instructions index 31b610d5143..f027717800d 100644 --- a/compiler/testData/cfg/arrays/arrayAccessExpression.instructions +++ b/compiler/testData/cfg/arrays/arrayAccessExpression.instructions @@ -39,7 +39,7 @@ L0: mark(ab.getArray()) r(ab) -> mark(getArray()) - call(getArray, getArray|) -> + call(getArray(), getArray|) -> r(1) -> mark(ab.getArray()[1]) call(ab.getArray()[1], get|, ) -> diff --git a/compiler/testData/cfg/arrays/arrayAccessExpression.values b/compiler/testData/cfg/arrays/arrayAccessExpression.values index 7af20f98cbc..2b7cc5b1d37 100644 --- a/compiler/testData/cfg/arrays/arrayAccessExpression.values +++ b/compiler/testData/cfg/arrays/arrayAccessExpression.values @@ -13,11 +13,11 @@ fun test(ab: Ab) { ab.getArray()[1] } --------------------- - : {<: Ab} NEW: magic(ab: Ab) -> -ab : {<: Ab} NEW: r(ab) -> -getArray() : {<: Array} NEW: call(getArray, getArray|) -> -ab.getArray() : {<: Array} COPY -1 : Int NEW: r(1) -> + : {<: Ab} NEW: magic(ab: Ab) -> +ab : {<: Ab} NEW: r(ab) -> +getArray() : {<: Array} NEW: call(getArray(), getArray|) -> +ab.getArray() : {<: Array} COPY +1 : Int NEW: r(1) -> ab.getArray()[1] : * NEW: call(ab.getArray()[1], get|, ) -> -{ ab.getArray()[1] } : * COPY -===================== +{ ab.getArray()[1] } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/arrays/arrayInc.instructions b/compiler/testData/cfg/arrays/arrayInc.instructions index 5916a920d52..3b77ae205e7 100644 --- a/compiler/testData/cfg/arrays/arrayInc.instructions +++ b/compiler/testData/cfg/arrays/arrayInc.instructions @@ -15,7 +15,7 @@ L0: mark(a[0]) call(a[0], get|, ) -> mark(a[0]++) - call(++, inc|) -> + call(a[0]++, inc|) -> r(a) -> r(0) -> call(a[0]++, set|, , ) -> diff --git a/compiler/testData/cfg/arrays/arraySetPlusAssign.instructions b/compiler/testData/cfg/arrays/arraySetPlusAssign.instructions index 4c01b6ae3ed..0ac5852fab5 100644 --- a/compiler/testData/cfg/arrays/arraySetPlusAssign.instructions +++ b/compiler/testData/cfg/arrays/arraySetPlusAssign.instructions @@ -16,7 +16,7 @@ L0: call(a[0], get|, ) -> r(1) -> mark(a[0] += 1) - call(+=, plus|, ) -> + call(a[0] += 1, plus|, ) -> r(a) -> r(0) -> call(a[0] += 1, set|, , ) -> diff --git a/compiler/testData/cfg/basic/Basic.instructions b/compiler/testData/cfg/basic/Basic.instructions index 6962e4a033a..6bd89cf4977 100644 --- a/compiler/testData/cfg/basic/Basic.instructions +++ b/compiler/testData/cfg/basic/Basic.instructions @@ -28,33 +28,33 @@ L0: mark(2.toLong()) r(2) -> mark(toLong()) - call(toLong, toLong|) -> + call(toLong(), toLong|) -> r(a) -> r(3) -> mark(foo(a, 3)) - call(foo, foo|, ) -> + call(foo(a, 3), foo|, ) -> mark(genfun()) - call(genfun, genfun) -> + call(genfun(), genfun) -> mark({1}) jmp?(L2) NEXT:[r({1}) -> , d({1})] d({1}) NEXT:[] L2: r({1}) -> PREV:[jmp?(L2)] mark(flfun {1}) - call(flfun, flfun|) -> + call(flfun {1}, flfun|) -> mark(3.equals(4)) r(3) -> r(4) -> mark(equals(4)) - call(equals, equals|, ) -> + call(equals(4), equals|, ) -> r(3) -> r(4) -> mark(3 equals 4) - call(equals, equals|, ) -> + call(3 equals 4, equals|, ) -> r(1) -> r(2) -> mark(1 + 2) - call(+, plus|, ) -> + call(1 + 2, plus|, ) -> r(a) -> jf(L5|) NEXT:[magic(a && true|, ) -> , r(true) -> ] r(true) -> diff --git a/compiler/testData/cfg/basic/Basic.values b/compiler/testData/cfg/basic/Basic.values index a579da36221..ce0905f83d1 100644 --- a/compiler/testData/cfg/basic/Basic.values +++ b/compiler/testData/cfg/basic/Basic.values @@ -17,47 +17,47 @@ fun f(a : Boolean) : Unit { } --------------------- - : Boolean NEW: magic(a : Boolean) -> -1 : * NEW: r(1) -> -a : * NEW: r(a) -> -2 : {<: Number} NEW: r(2) -> -toLong() : * NEW: call(toLong, toLong|) -> -2.toLong() : * COPY -a : Boolean NEW: r(a) -> -3 : Int NEW: r(3) -> -foo(a, 3) : * NEW: call(foo, foo|, ) -> -genfun() : * NEW: call(genfun, genfun) -> -{1} : {<: () -> Any} NEW: r({1}) -> -flfun {1} : * NEW: call(flfun, flfun|) -> -3 : OR{{<: Any}, {<: Any}} NEW: r(3) -> -4 : {<: Any?} NEW: r(4) -> -equals(4) : * NEW: call(equals, equals|, ) -> -3.equals(4) : * COPY -3 : OR{{<: Any}, {<: Any}} NEW: r(3) -> -4 : {<: Any?} NEW: r(4) -> -3 equals 4 : * NEW: call(equals, equals|, ) -> -1 : Int NEW: r(1) -> -2 : Int NEW: r(2) -> -1 + 2 : * NEW: call(+, plus|, ) -> -a : Boolean NEW: r(a) -> -true : Boolean NEW: r(true) -> -a && true : * NEW: magic(a && true|, ) -> -a : Boolean NEW: r(a) -> -false : Boolean NEW: r(false) -> -a || false : * NEW: magic(a || false|, ) -> -{ 1 a 2.toLong() foo(a, 3) genfun() flfun {1} 3.equals(4) 3 equals 4 1 + 2 a && true a || false } : * COPY + : Boolean NEW: magic(a : Boolean) -> +1 : * NEW: r(1) -> +a : * NEW: r(a) -> +2 : {<: Number} NEW: r(2) -> +toLong() : * NEW: call(toLong(), toLong|) -> +2.toLong() : * COPY +a : Boolean NEW: r(a) -> +3 : Int NEW: r(3) -> +foo(a, 3) : * NEW: call(foo(a, 3), foo|, ) -> +genfun() : * NEW: call(genfun(), genfun) -> +{1} : {<: () -> Any} NEW: r({1}) -> +flfun {1} : * NEW: call(flfun {1}, flfun|) -> +3 : OR{{<: Any}, {<: Any}} NEW: r(3) -> +4 : {<: Any?} NEW: r(4) -> +equals(4) : * NEW: call(equals(4), equals|, ) -> +3.equals(4) : * COPY +3 : OR{{<: Any}, {<: Any}} NEW: r(3) -> +4 : {<: Any?} NEW: r(4) -> +3 equals 4 : * NEW: call(3 equals 4, equals|, ) -> +1 : Int NEW: r(1) -> +2 : Int NEW: r(2) -> +1 + 2 : * NEW: call(1 + 2, plus|, ) -> +a : Boolean NEW: r(a) -> +true : Boolean NEW: r(true) -> +a && true : * NEW: magic(a && true|, ) -> +a : Boolean NEW: r(a) -> +false : Boolean NEW: r(false) -> +a || false : * NEW: magic(a || false|, ) -> +{ 1 a 2.toLong() foo(a, 3) genfun() flfun {1} 3.equals(4) 3 equals 4 1 + 2 a && true a || false } : * COPY ===================== == anonymous_0 == {1} --------------------- 1 : Int NEW: r(1) -> -1 : Int COPY +1 : Int COPY ===================== == foo == fun foo(a : Boolean, b : Int) : Unit {} --------------------- : Boolean NEW: magic(a : Boolean) -> - : Int NEW: magic(b : Int) -> + : Int NEW: magic(b : Int) -> ===================== == genfun == fun genfun() : Unit {} diff --git a/compiler/testData/cfg/controlStructures/Finally.instructions b/compiler/testData/cfg/controlStructures/Finally.instructions index 07f32055e00..989a34b06a6 100644 --- a/compiler/testData/cfg/controlStructures/Finally.instructions +++ b/compiler/testData/cfg/controlStructures/Finally.instructions @@ -54,7 +54,7 @@ L0: r(2) -> r(3) -> mark(2 > 3) - call(>, compareTo|, ) -> + call(2 > 3, compareTo|, ) -> jf(L3|) NEXT:[read (Unit), mark({ return })] 4 mark({ return }) L4 [start finally]: @@ -139,20 +139,20 @@ L4: r(2) -> r(3) -> mark(2 > 3) - call(>, compareTo|, ) -> - jf(L6|) NEXT:[read (Unit), mark({ return@l })] + call(2 > 3, compareTo|, ) -> + jf(L6|) NEXT:[read (Unit), mark({ return@l })] 6 mark({ return@l }) - ret L5 NEXT:[] -- 5 jmp(L7) NEXT:[] PREV:[] + ret L5 NEXT:[] +- 5 jmp(L7) NEXT:[] PREV:[] L6: - read (Unit) PREV:[jf(L6|)] + read (Unit) PREV:[jf(L6|)] L5: L7: - 4 NEXT:[] PREV:[ret L5, read (Unit)] + 4 NEXT:[] PREV:[ret L5, read (Unit)] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== == t4 == fun t4() { @@ -207,7 +207,7 @@ L3: r(2) -> r(3) -> mark(2 > 3) - call(>, compareTo|, ) -> + call(2 > 3, compareTo|, ) -> jf(L6|) NEXT:[read (Unit), mark({ return@l })] 6 mark({ return@l }) L7 [start finally]: @@ -266,7 +266,7 @@ L4 [body entry point]: r(2) -> r(3) -> mark(2 > 3) - call(>, compareTo|, ) -> + call(2 > 3, compareTo|, ) -> jf(L7|) NEXT:[read (Unit), mark({ break @l })] 5 mark({ break @l }) L8 [start finally]: @@ -329,7 +329,7 @@ L5 [body entry point]: r(2) -> r(3) -> mark(2 > 3) - call(>, compareTo|, ) -> + call(2 > 3, compareTo|, ) -> jf(L7|) NEXT:[read (Unit), mark({ break @l })] 5 mark({ break @l }) jmp(L4 [loop exit point]) NEXT:[read (Unit)] @@ -390,7 +390,7 @@ L5 [body entry point]: r(2) -> r(3) -> mark(2 > 3) - call(>, compareTo|, ) -> + call(2 > 3, compareTo|, ) -> jf(L7|) NEXT:[read (Unit), mark({ break @l })] 5 mark({ break @l }) jmp(L4 [loop exit point]) NEXT:[read (Unit)] @@ -442,7 +442,7 @@ L0: 3 r(1) -> r(a) -> mark(1..a) - call(.., rangeTo|, ) -> + call(1..a, rangeTo|, ) -> v(i) L3: jmp?(L2) NEXT:[read (Unit), magic(1..a|) -> ] @@ -460,7 +460,7 @@ L5 [body entry point]: r(2) -> r(3) -> mark(2 > 3) - call(>, compareTo|, ) -> + call(2 > 3, compareTo|, ) -> jf(L7|) NEXT:[read (Unit), mark({ continue @l })] 6 mark({ continue @l }) L8 [start finally]: @@ -518,7 +518,7 @@ L0: 4 r(1) -> r(a) -> mark(1..a) - call(.., rangeTo|, ) -> + call(1..a, rangeTo|, ) -> v(i) L4: jmp?(L3) NEXT:[read (Unit), magic(1..a|) -> ] @@ -533,7 +533,7 @@ L6 [body entry point]: r(2) -> r(3) -> mark(2 > 3) - call(>, compareTo|, ) -> + call(2 > 3, compareTo|, ) -> jf(L7|) NEXT:[read (Unit), mark({ continue @l })] 6 mark({ continue @l }) jmp(L5 [loop entry point]) NEXT:[magic(1..a|) -> ] @@ -589,7 +589,7 @@ L0: 4 r(1) -> r(a) -> mark(1..a) - call(.., rangeTo|, ) -> + call(1..a, rangeTo|, ) -> v(i) L4: jmp?(L3) NEXT:[read (Unit), magic(1..a|) -> ] @@ -604,7 +604,7 @@ L6 [body entry point]: r(2) -> r(3) -> mark(2 > 3) - call(>, compareTo|, ) -> + call(2 > 3, compareTo|, ) -> jf(L7|) NEXT:[read (Unit), mark({ continue @l })] 6 mark({ continue @l }) jmp(L5 [loop entry point]) NEXT:[magic(1..a|) -> ] @@ -693,7 +693,7 @@ L3 [start finally]: 4 mark({ doSmth(3) }) r(3) -> mark(doSmth(3)) - call(doSmth, doSmth|) -> + call(doSmth(3), doSmth|) -> L4 [finish finally]: 3 ret(*|) L1 NEXT:[] - 2 jmp(L5 [skipFinallyToErrorBlock]) NEXT:[mark({ doSmth(3) })] PREV:[] @@ -701,13 +701,13 @@ L2 [onExceptionToFinallyBlock]: 4 mark({ doSmth(3) }) PREV:[jmp?(L2 [onExceptionToFinallyBlock])] r(3) -> mark(doSmth(3)) - call(doSmth, doSmth|) -> + call(doSmth(3), doSmth|) -> 2 jmp(error) NEXT:[] L5 [skipFinallyToErrorBlock]: - 4 mark({ doSmth(3) }) PREV:[] - r(3) -> PREV:[] - mark(doSmth(3)) PREV:[] -- call(doSmth, doSmth|) -> PREV:[] +- call(doSmth(3), doSmth|) -> PREV:[] L1: 1 NEXT:[] PREV:[ret(*|) L1] error: @@ -740,7 +740,7 @@ L4 [start finally]: 4 mark({ doSmth(3) }) r(3) -> mark(doSmth(3)) - call(doSmth, doSmth|) -> + call(doSmth(3), doSmth|) -> L5 [finish finally]: 3 ret(*|) L1 NEXT:[] - 2 jmp(L6 [afterCatches]) NEXT:[jmp(L7 [skipFinallyToErrorBlock])] PREV:[] @@ -751,7 +751,7 @@ L2 [onException]: 4 mark({ doSmth(2) }) r(2) -> mark(doSmth(2)) - call(doSmth, doSmth|) -> + call(doSmth(2), doSmth|) -> 3 jmp(L6 [afterCatches]) L6 [afterCatches]: 2 jmp(L7 [skipFinallyToErrorBlock]) NEXT:[mark({ doSmth(3) })] @@ -759,15 +759,15 @@ L3 [onExceptionToFinallyBlock]: 4 mark({ doSmth(3) }) PREV:[jmp?(L3 [onExceptionToFinallyBlock])] r(3) -> mark(doSmth(3)) - call(doSmth, doSmth|) -> + call(doSmth(3), doSmth|) -> 2 jmp(error) NEXT:[] L7 [skipFinallyToErrorBlock]: 4 mark({ doSmth(3) }) PREV:[jmp(L7 [skipFinallyToErrorBlock])] r(3) -> mark(doSmth(3)) - call(doSmth, doSmth|) -> + call(doSmth(3), doSmth|) -> L1: - 1 NEXT:[] PREV:[ret(*|) L1, call(doSmth, doSmth|) -> ] + 1 NEXT:[] PREV:[ret(*|) L1, call(doSmth(3), doSmth|) -> ] error: PREV:[jmp(error)] sink: @@ -799,7 +799,7 @@ L2 [onException]: 4 mark({ doSmth(2) }) r(2) -> mark(doSmth(2)) - call(doSmth, doSmth|) -> + call(doSmth(2), doSmth|) -> 3 jmp(L3 [afterCatches]) L1: L3 [afterCatches]: @@ -834,7 +834,7 @@ L4 [start finally]: 4 mark({ doSmth(3) }) r(3) -> mark(doSmth(3)) - call(doSmth, doSmth|) -> + call(doSmth(3), doSmth|) -> L5 [finish finally]: 3 ret(*|) L1 NEXT:[] - 2 jmp(L6 [afterCatches]) NEXT:[jmp(L7 [skipFinallyToErrorBlock])] PREV:[] @@ -847,7 +847,7 @@ L2 [onException]: mark({ doSmth(3) }) r(3) -> mark(doSmth(3)) - call(doSmth, doSmth|) -> + call(doSmth(3), doSmth|) -> ret(*|) L1 NEXT:[] - 3 jmp(L6 [afterCatches]) PREV:[] L6 [afterCatches]: @@ -856,13 +856,13 @@ L3 [onExceptionToFinallyBlock]: 4 mark({ doSmth(3) }) PREV:[jmp?(L3 [onExceptionToFinallyBlock])] r(3) -> mark(doSmth(3)) - call(doSmth, doSmth|) -> + call(doSmth(3), doSmth|) -> 2 jmp(error) NEXT:[] L7 [skipFinallyToErrorBlock]: - 4 mark({ doSmth(3) }) PREV:[] - r(3) -> PREV:[] - mark(doSmth(3)) PREV:[] -- call(doSmth, doSmth|) -> PREV:[] +- call(doSmth(3), doSmth|) -> PREV:[] L1: 1 NEXT:[] PREV:[ret(*|) L1, ret(*|) L1] error: @@ -892,7 +892,7 @@ L0: 3 mark({ doSmth(1) }) r(1) -> mark(doSmth(1)) - call(doSmth, doSmth|) -> + call(doSmth(1), doSmth|) -> 2 jmp(L4 [afterCatches]) NEXT:[jmp(L7 [skipFinallyToErrorBlock])] L2 [onException]: 3 v(e: UnsupportedOperationException) PREV:[jmp?(L2 [onException])] @@ -904,7 +904,7 @@ L5 [start finally]: 5 mark({ doSmth(3) }) r(3) -> mark(doSmth(3)) - call(doSmth, doSmth|) -> + call(doSmth(3), doSmth|) -> L6 [finish finally]: 4 ret(*|) L1 NEXT:[] - 3 jmp(L4 [afterCatches]) PREV:[] @@ -914,15 +914,15 @@ L3 [onExceptionToFinallyBlock]: 5 mark({ doSmth(3) }) PREV:[jmp?(L3 [onExceptionToFinallyBlock])] r(3) -> mark(doSmth(3)) - call(doSmth, doSmth|) -> + call(doSmth(3), doSmth|) -> 2 jmp(error) NEXT:[] L7 [skipFinallyToErrorBlock]: 5 mark({ doSmth(3) }) PREV:[jmp(L7 [skipFinallyToErrorBlock])] r(3) -> mark(doSmth(3)) - call(doSmth, doSmth|) -> + call(doSmth(3), doSmth|) -> L1: - 1 NEXT:[] PREV:[ret(*|) L1, call(doSmth, doSmth|) -> ] + 1 NEXT:[] PREV:[ret(*|) L1, call(doSmth(3), doSmth|) -> ] error: PREV:[jmp(error)] sink: diff --git a/compiler/testData/cfg/controlStructures/Finally.values b/compiler/testData/cfg/controlStructures/Finally.values index 2e913a861a1..caaa4f106ff 100644 --- a/compiler/testData/cfg/controlStructures/Finally.values +++ b/compiler/testData/cfg/controlStructures/Finally.values @@ -8,11 +8,11 @@ fun t1() { } --------------------- 1 : * NEW: r(1) -> -{ 1 } : * COPY +{ 1 } : * COPY 2 : * NEW: r(2) -> -{ 2 } : * COPY -try { 1 } finally { 2 } : * COPY -{ try { 1 } finally { 2 } } : * COPY +{ 2 } : * COPY +try { 1 } finally { 2 } : * COPY +{ try { 1 } finally { 2 } } : * COPY ===================== == t2 == fun t2() { @@ -26,12 +26,12 @@ fun t2() { } } --------------------- -1 : * NEW: r(1) -> -2 : {<: Comparable} NEW: r(2) -> -3 : Int NEW: r(3) -> -2 > 3 : Boolean NEW: call(>, compareTo|, ) -> -2 : * NEW: r(2) -> -{ 2 } : * COPY +1 : * NEW: r(1) -> +2 : {<: Comparable} NEW: r(2) -> +3 : Int NEW: r(3) -> +2 > 3 : Boolean NEW: call(2 > 3, compareTo|, ) -> +2 : * NEW: r(2) -> +{ 2 } : * COPY ===================== == t3 == fun t3() { @@ -47,14 +47,14 @@ fun t3() { } } --------------------- -1 : * NEW: r(1) -> +1 : * NEW: r(1) -> { () -> if (2 > 3) { return@l } } : * NEW: r({ () -> if (2 > 3) { return@l } }) -> -@l{ () -> if (2 > 3) { return@l } } : * COPY -{ 1 @l{ () -> if (2 > 3) { return@l } } } : * COPY -2 : * NEW: r(2) -> -{ 2 } : * COPY -try { 1 @l{ () -> if (2 > 3) { return@l } } } finally { 2 } : * COPY -{ try { 1 @l{ () -> if (2 > 3) { return@l } } } finally { 2 } } : * COPY +@l{ () -> if (2 > 3) { return@l } } : * COPY +{ 1 @l{ () -> if (2 > 3) { return@l } } } : * COPY +2 : * NEW: r(2) -> +{ 2 } : * COPY +try { 1 @l{ () -> if (2 > 3) { return@l } } } finally { 2 } : * COPY +{ try { 1 @l{ () -> if (2 > 3) { return@l } } } finally { 2 } } : * COPY ===================== == anonymous_0 == { () -> @@ -63,9 +63,9 @@ try { 1 @l{ () -> if (2 > 3) { return@l } } } finally { 2 } : * COPY } } --------------------- -2 : {<: Comparable} NEW: r(2) -> -3 : Int NEW: r(3) -> -2 > 3 : Boolean NEW: call(>, compareTo|, ) -> +2 : {<: Comparable} NEW: r(2) -> +3 : Int NEW: r(3) -> +2 > 3 : Boolean NEW: call(2 > 3, compareTo|, ) -> ===================== == t4 == fun t4() { @@ -82,8 +82,8 @@ fun t4() { } --------------------- { () -> try { 1 if (2 > 3) { return@l } } finally { 2 } } : * NEW: r({ () -> try { 1 if (2 > 3) { return@l } } finally { 2 } }) -> -@l{ () -> try { 1 if (2 > 3) { return@l } } finally { 2 } } : * COPY -{ @l{ () -> try { 1 if (2 > 3) { return@l } } finally { 2 } } } : * COPY +@l{ () -> try { 1 if (2 > 3) { return@l } } finally { 2 } } : * COPY +{ @l{ () -> try { 1 if (2 > 3) { return@l } } finally { 2 } } } : * COPY ===================== == anonymous_1 == { () -> @@ -97,12 +97,12 @@ fun t4() { } } --------------------- -1 : * NEW: r(1) -> -2 : {<: Comparable} NEW: r(2) -> -3 : Int NEW: r(3) -> -2 > 3 : Boolean NEW: call(>, compareTo|, ) -> -2 : * NEW: r(2) -> -{ 2 } : * COPY +1 : * NEW: r(1) -> +2 : {<: Comparable} NEW: r(2) -> +3 : Int NEW: r(3) -> +2 > 3 : Boolean NEW: call(2 > 3, compareTo|, ) -> +2 : * NEW: r(2) -> +{ 2 } : * COPY ===================== == t5 == fun t5() { @@ -118,13 +118,13 @@ fun t5() { } } --------------------- -true : * NEW: r(true) -> -1 : * NEW: r(1) -> -2 : {<: Comparable} NEW: r(2) -> -3 : Int NEW: r(3) -> -2 > 3 : Boolean NEW: call(>, compareTo|, ) -> -2 : * NEW: r(2) -> -{ 2 } : * COPY +true : * NEW: r(true) -> +1 : * NEW: r(1) -> +2 : {<: Comparable} NEW: r(2) -> +3 : Int NEW: r(3) -> +2 > 3 : Boolean NEW: call(2 > 3, compareTo|, ) -> +2 : * NEW: r(2) -> +{ 2 } : * COPY ===================== == t6 == fun t6() { @@ -141,17 +141,17 @@ fun t6() { } } --------------------- -true : * NEW: r(true) -> -1 : * NEW: r(1) -> -2 : {<: Comparable} NEW: r(2) -> -3 : Int NEW: r(3) -> -2 > 3 : Boolean NEW: call(>, compareTo|, ) -> -5 : * NEW: r(5) -> -{ @l while(true) { 1 if (2 > 3) { break @l } } 5 } : * COPY -2 : * NEW: r(2) -> -{ 2 } : * COPY -try { @l while(true) { 1 if (2 > 3) { break @l } } 5 } finally { 2 } : * COPY -{ try { @l while(true) { 1 if (2 > 3) { break @l } } 5 } finally { 2 } } : * COPY +true : * NEW: r(true) -> +1 : * NEW: r(1) -> +2 : {<: Comparable} NEW: r(2) -> +3 : Int NEW: r(3) -> +2 > 3 : Boolean NEW: call(2 > 3, compareTo|, ) -> +5 : * NEW: r(5) -> +{ @l while(true) { 1 if (2 > 3) { break @l } } 5 } : * COPY +2 : * NEW: r(2) -> +{ 2 } : * COPY +try { @l while(true) { 1 if (2 > 3) { break @l } } 5 } finally { 2 } : * COPY +{ try { @l while(true) { 1 if (2 > 3) { break @l } } 5 } finally { 2 } } : * COPY ===================== == t7 == fun t7() { @@ -167,13 +167,13 @@ fun t7() { } } --------------------- -true : * NEW: r(true) -> -1 : * NEW: r(1) -> -2 : {<: Comparable} NEW: r(2) -> -3 : Int NEW: r(3) -> -2 > 3 : Boolean NEW: call(>, compareTo|, ) -> -2 : * NEW: r(2) -> -{ 2 } : * COPY +true : * NEW: r(true) -> +1 : * NEW: r(1) -> +2 : {<: Comparable} NEW: r(2) -> +3 : Int NEW: r(3) -> +2 > 3 : Boolean NEW: call(2 > 3, compareTo|, ) -> +2 : * NEW: r(2) -> +{ 2 } : * COPY ===================== == t8 == fun t8(a : Int) { @@ -189,17 +189,17 @@ fun t8(a : Int) { } } --------------------- - : Int NEW: magic(a : Int) -> - : Int NEW: magic(1..a|) -> -1 : Int NEW: r(1) -> -a : Int NEW: r(a) -> -1..a : {<: Iterable} NEW: call(.., rangeTo|, ) -> -1 : * NEW: r(1) -> -2 : {<: Comparable} NEW: r(2) -> -3 : Int NEW: r(3) -> -2 > 3 : Boolean NEW: call(>, compareTo|, ) -> -2 : * NEW: r(2) -> -{ 2 } : * COPY + : Int NEW: magic(a : Int) -> + : Int NEW: magic(1..a|) -> +1 : Int NEW: r(1) -> +a : Int NEW: r(a) -> +1..a : {<: Iterable} NEW: call(1..a, rangeTo|, ) -> +1 : * NEW: r(1) -> +2 : {<: Comparable} NEW: r(2) -> +3 : Int NEW: r(3) -> +2 > 3 : Boolean NEW: call(2 > 3, compareTo|, ) -> +2 : * NEW: r(2) -> +{ 2 } : * COPY ===================== == t9 == fun t9(a : Int) { @@ -216,21 +216,21 @@ fun t9(a : Int) { } } --------------------- - : Int NEW: magic(a : Int) -> - : Int NEW: magic(1..a|) -> -1 : Int NEW: r(1) -> -a : Int NEW: r(a) -> -1..a : {<: Iterable} NEW: call(.., rangeTo|, ) -> -1 : * NEW: r(1) -> -2 : {<: Comparable} NEW: r(2) -> -3 : Int NEW: r(3) -> -2 > 3 : Boolean NEW: call(>, compareTo|, ) -> -5 : * NEW: r(5) -> -{ @l for (i in 1..a) { 1 if (2 > 3) { continue @l } } 5 } : * COPY -2 : * NEW: r(2) -> -{ 2 } : * COPY -try { @l for (i in 1..a) { 1 if (2 > 3) { continue @l } } 5 } finally { 2 } : * COPY -{ try { @l for (i in 1..a) { 1 if (2 > 3) { continue @l } } 5 } finally { 2 } } : * COPY + : Int NEW: magic(a : Int) -> + : Int NEW: magic(1..a|) -> +1 : Int NEW: r(1) -> +a : Int NEW: r(a) -> +1..a : {<: Iterable} NEW: call(1..a, rangeTo|, ) -> +1 : * NEW: r(1) -> +2 : {<: Comparable} NEW: r(2) -> +3 : Int NEW: r(3) -> +2 > 3 : Boolean NEW: call(2 > 3, compareTo|, ) -> +5 : * NEW: r(5) -> +{ @l for (i in 1..a) { 1 if (2 > 3) { continue @l } } 5 } : * COPY +2 : * NEW: r(2) -> +{ 2 } : * COPY +try { @l for (i in 1..a) { 1 if (2 > 3) { continue @l } } 5 } finally { 2 } : * COPY +{ try { @l for (i in 1..a) { 1 if (2 > 3) { continue @l } } 5 } finally { 2 } } : * COPY ===================== == t10 == fun t10(a : Int) { @@ -246,17 +246,17 @@ fun t10(a : Int) { } } --------------------- - : Int NEW: magic(a : Int) -> - : Int NEW: magic(1..a|) -> -1 : Int NEW: r(1) -> -a : Int NEW: r(a) -> -1..a : {<: Iterable} NEW: call(.., rangeTo|, ) -> -1 : * NEW: r(1) -> -2 : {<: Comparable} NEW: r(2) -> -3 : Int NEW: r(3) -> -2 > 3 : Boolean NEW: call(>, compareTo|, ) -> -2 : * NEW: r(2) -> -{ 2 } : * COPY + : Int NEW: magic(a : Int) -> + : Int NEW: magic(1..a|) -> +1 : Int NEW: r(1) -> +a : Int NEW: r(a) -> +1..a : {<: Iterable} NEW: call(1..a, rangeTo|, ) -> +1 : * NEW: r(1) -> +2 : {<: Comparable} NEW: r(2) -> +3 : Int NEW: r(3) -> +2 > 3 : Boolean NEW: call(2 > 3, compareTo|, ) -> +2 : * NEW: r(2) -> +{ 2 } : * COPY ===================== == t11 == fun t11() { @@ -281,10 +281,10 @@ fun t12() : Int { } } --------------------- -1 : Int NEW: r(1) -> -3 : Int NEW: r(3) -> -doSmth(3) : * NEW: call(doSmth, doSmth|) -> -{ doSmth(3) } : * COPY +1 : Int NEW: r(1) -> +3 : Int NEW: r(3) -> +doSmth(3) : * NEW: call(doSmth(3), doSmth|) -> +{ doSmth(3) } : * COPY ===================== == t13 == fun t13() : Int { @@ -300,15 +300,15 @@ fun t13() : Int { } --------------------- : {<: UnsupportedOperationException} NEW: magic(e: UnsupportedOperationException) -> -1 : Int NEW: r(1) -> -2 : Int NEW: r(2) -> -doSmth(2) : * NEW: call(doSmth, doSmth|) -> -{ doSmth(2) } : * COPY -3 : Int NEW: r(3) -> -doSmth(3) : * NEW: call(doSmth, doSmth|) -> -{ doSmth(3) } : * COPY -try { return 1 } catch (e: UnsupportedOperationException) { doSmth(2) } finally { doSmth(3) } : * COPY -{ try { return 1 } catch (e: UnsupportedOperationException) { doSmth(2) } finally { doSmth(3) } } : * COPY +1 : Int NEW: r(1) -> +2 : Int NEW: r(2) -> +doSmth(2) : * NEW: call(doSmth(2), doSmth|) -> +{ doSmth(2) } : * COPY +3 : Int NEW: r(3) -> +doSmth(3) : * NEW: call(doSmth(3), doSmth|) -> +{ doSmth(3) } : * COPY +try { return 1 } catch (e: UnsupportedOperationException) { doSmth(2) } finally { doSmth(3) } : * COPY +{ try { return 1 } catch (e: UnsupportedOperationException) { doSmth(2) } finally { doSmth(3) } } : * COPY ===================== == t14 == fun t14() : Int { @@ -321,12 +321,12 @@ fun t14() : Int { } --------------------- : {<: UnsupportedOperationException} NEW: magic(e: UnsupportedOperationException) -> -1 : Int NEW: r(1) -> -2 : Int NEW: r(2) -> -doSmth(2) : * NEW: call(doSmth, doSmth|) -> -{ doSmth(2) } : * COPY -try { return 1 } catch (e: UnsupportedOperationException) { doSmth(2) } : * COPY -{ try { return 1 } catch (e: UnsupportedOperationException) { doSmth(2) } } : * COPY +1 : Int NEW: r(1) -> +2 : Int NEW: r(2) -> +doSmth(2) : * NEW: call(doSmth(2), doSmth|) -> +{ doSmth(2) } : * COPY +try { return 1 } catch (e: UnsupportedOperationException) { doSmth(2) } : * COPY +{ try { return 1 } catch (e: UnsupportedOperationException) { doSmth(2) } } : * COPY ===================== == t15 == fun t15() : Int { @@ -342,11 +342,11 @@ fun t15() : Int { } --------------------- : {<: UnsupportedOperationException} NEW: magic(e: UnsupportedOperationException) -> -1 : Int NEW: r(1) -> -2 : Int NEW: r(2) -> -3 : Int NEW: r(3) -> -doSmth(3) : * NEW: call(doSmth, doSmth|) -> -{ doSmth(3) } : * COPY +1 : Int NEW: r(1) -> +2 : Int NEW: r(2) -> +3 : Int NEW: r(3) -> +doSmth(3) : * NEW: call(doSmth(3), doSmth|) -> +{ doSmth(3) } : * COPY ===================== == t16 == fun t16() : Int { @@ -362,15 +362,15 @@ fun t16() : Int { } --------------------- : {<: UnsupportedOperationException} NEW: magic(e: UnsupportedOperationException) -> -1 : Int NEW: r(1) -> -doSmth(1) : * NEW: call(doSmth, doSmth|) -> -{ doSmth(1) } : * COPY -2 : Int NEW: r(2) -> -3 : Int NEW: r(3) -> -doSmth(3) : * NEW: call(doSmth, doSmth|) -> -{ doSmth(3) } : * COPY -try { doSmth(1) } catch (e: UnsupportedOperationException) { return 2 } finally { doSmth(3) } : * COPY -{ try { doSmth(1) } catch (e: UnsupportedOperationException) { return 2 } finally { doSmth(3) } } : * COPY +1 : Int NEW: r(1) -> +doSmth(1) : * NEW: call(doSmth(1), doSmth|) -> +{ doSmth(1) } : * COPY +2 : Int NEW: r(2) -> +3 : Int NEW: r(3) -> +doSmth(3) : * NEW: call(doSmth(3), doSmth|) -> +{ doSmth(3) } : * COPY +try { doSmth(1) } catch (e: UnsupportedOperationException) { return 2 } finally { doSmth(3) } : * COPY +{ try { doSmth(1) } catch (e: UnsupportedOperationException) { return 2 } finally { doSmth(3) } } : * COPY ===================== == doSmth == fun doSmth(i: Int) { diff --git a/compiler/testData/cfg/controlStructures/FinallyTestCopy.instructions b/compiler/testData/cfg/controlStructures/FinallyTestCopy.instructions index 1fab4a10d8b..2d26d9f4058 100644 --- a/compiler/testData/cfg/controlStructures/FinallyTestCopy.instructions +++ b/compiler/testData/cfg/controlStructures/FinallyTestCopy.instructions @@ -78,7 +78,7 @@ L0: jmp?(L3 [onExceptionToFinallyBlock]) NEXT:[mark({ return 1 }), mark({ doSmth() })] 3 mark({ doSmth() }) mark(doSmth()) - call(doSmth, doSmth) -> + call(doSmth(), doSmth) -> 2 jmp(L4 [afterCatches]) NEXT:[jmp(L6 [skipFinallyToErrorBlock])] L2 [onException]: jmp?(L5 [catch 0]) NEXT:[v(e: Exception), v(e: NullPointerException)] PREV:[jmp?(L2 [onException])] @@ -87,7 +87,7 @@ L2 [onException]: w(e|) 4 mark({ doSmth1() }) mark(doSmth1()) - call(doSmth1, doSmth1) -> + call(doSmth1(), doSmth1) -> 3 jmp(L4 [afterCatches]) NEXT:[jmp(L6 [skipFinallyToErrorBlock])] L5 [catch 0]: v(e: Exception) PREV:[jmp?(L5 [catch 0])] @@ -95,7 +95,7 @@ L5 [catch 0]: w(e|) 4 mark({ doSmth2() }) mark(doSmth2()) - call(doSmth2, doSmth2) -> + call(doSmth2(), doSmth2) -> 3 jmp(L4 [afterCatches]) L4 [afterCatches]: 2 jmp(L6 [skipFinallyToErrorBlock]) NEXT:[mark({ return 1 })] PREV:[jmp(L4 [afterCatches]), jmp(L4 [afterCatches]), jmp(L4 [afterCatches])] @@ -143,7 +143,7 @@ L0: L2 [loop entry point]: L5 [condition entry point]: mark(cond()) PREV:[mark({ while (cond()) { try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { if (cond()) return else continue } } }), jmp(L2 [loop entry point]), jmp(L2 [loop entry point])] - call(cond, cond) -> + call(cond(), cond) -> mark(while (cond()) { try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { if (cond()) return else continue } }) jf(L3 [loop exit point]|) NEXT:[read (Unit), mark({ try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { if (cond()) return else continue } })] L4 [body entry point]: @@ -153,7 +153,7 @@ L4 [body entry point]: jmp?(L7 [onExceptionToFinallyBlock]) NEXT:[mark({ if (cond()) return else continue }), mark({ doSmth() })] 4 mark({ doSmth() }) mark(doSmth()) - call(doSmth, doSmth) -> + call(doSmth(), doSmth) -> 3 jmp(L8 [afterCatches]) NEXT:[jmp(L10 [skipFinallyToErrorBlock])] L6 [onException]: jmp?(L9 [catch 0]) NEXT:[v(e: Exception), v(e: NullPointerException)] PREV:[jmp?(L6 [onException])] @@ -162,7 +162,7 @@ L6 [onException]: w(e|) 5 mark({ doSmth1() }) mark(doSmth1()) - call(doSmth1, doSmth1) -> + call(doSmth1(), doSmth1) -> 4 jmp(L8 [afterCatches]) NEXT:[jmp(L10 [skipFinallyToErrorBlock])] L9 [catch 0]: v(e: Exception) PREV:[jmp?(L9 [catch 0])] @@ -170,7 +170,7 @@ L9 [catch 0]: w(e|) 5 mark({ doSmth2() }) mark(doSmth2()) - call(doSmth2, doSmth2) -> + call(doSmth2(), doSmth2) -> 4 jmp(L8 [afterCatches]) L8 [afterCatches]: 3 jmp(L10 [skipFinallyToErrorBlock]) NEXT:[mark({ if (cond()) return else continue })] PREV:[jmp(L8 [afterCatches]), jmp(L8 [afterCatches]), jmp(L8 [afterCatches])] @@ -179,7 +179,7 @@ L11 [start finally]: 4 mark({ if (cond()) return else continue }) PREV:[jmp?(L7 [onExceptionToFinallyBlock])] mark(if (cond()) return else continue) mark(cond()) - call(cond, cond) -> + call(cond(), cond) -> jf(L12|) NEXT:[jmp(L2 [loop entry point]), ret L1] ret L1 NEXT:[] - jmp(L13) NEXT:[jmp(error)] PREV:[] @@ -192,7 +192,7 @@ L10 [skipFinallyToErrorBlock]: 4 mark({ if (cond()) return else continue }) PREV:[jmp(L10 [skipFinallyToErrorBlock])] mark(if (cond()) return else continue) mark(cond()) - call(cond, cond) -> + call(cond(), cond) -> jf(copy L12|) NEXT:[jmp(L2 [loop entry point]), ret L1] ret L1 NEXT:[] - jmp(copy L13) NEXT:[merge(try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { if (cond()) return else continue }|, , ) -> ] PREV:[] @@ -232,7 +232,7 @@ L0: jmp?(L3 [onExceptionToFinallyBlock]) NEXT:[mark({ while (cond()); }), mark({ doSmth() })] 3 mark({ doSmth() }) mark(doSmth()) - call(doSmth, doSmth) -> + call(doSmth(), doSmth) -> 2 jmp(L4 [afterCatches]) NEXT:[jmp(L6 [skipFinallyToErrorBlock])] L2 [onException]: jmp?(L5 [catch 0]) NEXT:[v(e: Exception), v(e: NullPointerException)] PREV:[jmp?(L2 [onException])] @@ -241,7 +241,7 @@ L2 [onException]: w(e|) 4 mark({ doSmth1() }) mark(doSmth1()) - call(doSmth1, doSmth1) -> + call(doSmth1(), doSmth1) -> 3 jmp(L4 [afterCatches]) NEXT:[jmp(L6 [skipFinallyToErrorBlock])] L5 [catch 0]: v(e: Exception) PREV:[jmp?(L5 [catch 0])] @@ -249,7 +249,7 @@ L5 [catch 0]: w(e|) 4 mark({ doSmth2() }) mark(doSmth2()) - call(doSmth2, doSmth2) -> + call(doSmth2(), doSmth2) -> 3 jmp(L4 [afterCatches]) L4 [afterCatches]: 2 jmp(L6 [skipFinallyToErrorBlock]) NEXT:[mark({ while (cond()); })] PREV:[jmp(L4 [afterCatches]), jmp(L4 [afterCatches]), jmp(L4 [afterCatches])] @@ -259,7 +259,7 @@ L7 [start finally]: L8 [loop entry point]: L11 [condition entry point]: mark(cond()) PREV:[mark({ while (cond()); }), jmp(L8 [loop entry point])] - call(cond, cond) -> + call(cond(), cond) -> mark(while (cond())) jf(L9 [loop exit point]|) NEXT:[read (Unit), jmp(L8 [loop entry point])] L10 [body entry point]: @@ -271,7 +271,7 @@ L12 [finish finally]: L6 [skipFinallyToErrorBlock]: 3 mark({ while (cond()); }) PREV:[jmp(L6 [skipFinallyToErrorBlock])] mark(cond()) PREV:[mark({ while (cond()); }), jmp(copy L8 [loop entry point])] - call(cond, cond) -> + call(cond(), cond) -> mark(while (cond())) jf(copy L9 [loop exit point]|) NEXT:[read (Unit), jmp(copy L8 [loop entry point])] jmp(copy L8 [loop entry point]) NEXT:[mark(cond())] @@ -305,7 +305,7 @@ L0: jmp?(L2 [onExceptionToFinallyBlock]) NEXT:[mark({ if(list != null) { } }), mark({ doSmth() })] 3 mark({ doSmth() }) mark(doSmth()) - call(doSmth, doSmth) -> + call(doSmth(), doSmth) -> 2 jmp(L3 [skipFinallyToErrorBlock]) NEXT:[mark({ if(list != null) { } })] L2 [onExceptionToFinallyBlock]: L4 [start finally]: @@ -314,7 +314,7 @@ L4 [start finally]: r(list) -> r(null) -> mark(list != null) - call(!=, equals|, ) -> + call(list != null, equals|, ) -> jf(L5|) NEXT:[read (Unit), mark({ })] 4 mark({ }) read (Unit) @@ -330,7 +330,7 @@ L3 [skipFinallyToErrorBlock]: r(list) -> r(null) -> mark(list != null) - call(!=, equals|, ) -> + call(list != null, equals|, ) -> jf(copy L5|) NEXT:[read (Unit), mark({ })] 4 mark({ }) read (Unit) diff --git a/compiler/testData/cfg/controlStructures/FinallyTestCopy.values b/compiler/testData/cfg/controlStructures/FinallyTestCopy.values index b8e799c364b..210c5c07e0d 100644 --- a/compiler/testData/cfg/controlStructures/FinallyTestCopy.values +++ b/compiler/testData/cfg/controlStructures/FinallyTestCopy.values @@ -30,17 +30,17 @@ fun testCopy1() : Int { } } --------------------- - : {<: NullPointerException} NEW: magic(e: NullPointerException) -> - : {<: Exception} NEW: magic(e: Exception) -> -doSmth() : * NEW: call(doSmth, doSmth) -> -{ doSmth() } : * COPY -doSmth1() : * NEW: call(doSmth1, doSmth1) -> -{ doSmth1() } : * COPY -doSmth2() : * NEW: call(doSmth2, doSmth2) -> -{ doSmth2() } : * COPY -1 : Int NEW: r(1) -> + : {<: NullPointerException} NEW: magic(e: NullPointerException) -> + : {<: Exception} NEW: magic(e: Exception) -> +doSmth() : * NEW: call(doSmth(), doSmth) -> +{ doSmth() } : * COPY +doSmth1() : * NEW: call(doSmth1(), doSmth1) -> +{ doSmth1() } : * COPY +doSmth2() : * NEW: call(doSmth2(), doSmth2) -> +{ doSmth2() } : * COPY +1 : Int NEW: r(1) -> try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { return 1 } : * NEW: merge(try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { return 1 }|, , ) -> -{ try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { return 1 } } : * COPY +{ try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { return 1 } } : * COPY ===================== == testCopy2 == fun testCopy2() { @@ -61,18 +61,18 @@ fun testCopy2() { } } --------------------- - : {<: NullPointerException} NEW: magic(e: NullPointerException) -> - : {<: Exception} NEW: magic(e: Exception) -> -cond() : Boolean NEW: call(cond, cond) -> -doSmth() : * NEW: call(doSmth, doSmth) -> -{ doSmth() } : * COPY -doSmth1() : * NEW: call(doSmth1, doSmth1) -> -{ doSmth1() } : * COPY -doSmth2() : * NEW: call(doSmth2, doSmth2) -> -{ doSmth2() } : * COPY -cond() : Boolean NEW: call(cond, cond) -> + : {<: NullPointerException} NEW: magic(e: NullPointerException) -> + : {<: Exception} NEW: magic(e: Exception) -> +cond() : Boolean NEW: call(cond(), cond) -> +doSmth() : * NEW: call(doSmth(), doSmth) -> +{ doSmth() } : * COPY +doSmth1() : * NEW: call(doSmth1(), doSmth1) -> +{ doSmth1() } : * COPY +doSmth2() : * NEW: call(doSmth2(), doSmth2) -> +{ doSmth2() } : * COPY +cond() : Boolean NEW: call(cond(), cond) -> try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { if (cond()) return else continue } : * NEW: merge(try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { if (cond()) return else continue }|, , ) -> -{ try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { if (cond()) return else continue } } : * COPY +{ try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { if (cond()) return else continue } } : * COPY ===================== == testCopy3 == fun testCopy3() { @@ -90,17 +90,17 @@ fun testCopy3() { } } --------------------- - : {<: NullPointerException} NEW: magic(e: NullPointerException) -> - : {<: Exception} NEW: magic(e: Exception) -> -doSmth() : * NEW: call(doSmth, doSmth) -> -{ doSmth() } : * COPY -doSmth1() : * NEW: call(doSmth1, doSmth1) -> -{ doSmth1() } : * COPY -doSmth2() : * NEW: call(doSmth2, doSmth2) -> -{ doSmth2() } : * COPY -cond() : Boolean NEW: call(cond, cond) -> + : {<: NullPointerException} NEW: magic(e: NullPointerException) -> + : {<: Exception} NEW: magic(e: Exception) -> +doSmth() : * NEW: call(doSmth(), doSmth) -> +{ doSmth() } : * COPY +doSmth1() : * NEW: call(doSmth1(), doSmth1) -> +{ doSmth1() } : * COPY +doSmth2() : * NEW: call(doSmth2(), doSmth2) -> +{ doSmth2() } : * COPY +cond() : Boolean NEW: call(cond(), cond) -> try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { while (cond()); } : * NEW: merge(try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { while (cond()); }|, , ) -> -{ try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { while (cond()); } } : * COPY +{ try { doSmth() } catch (e: NullPointerException) { doSmth1() } catch (e: Exception) { doSmth2() } finally { while (cond()); } } : * COPY ===================== == doTestCopy4 == fun doTestCopy4(list: List?) : Int { @@ -113,12 +113,12 @@ fun doTestCopy4(list: List?) : Int { } } --------------------- - : {<: List?} NEW: magic(list: List?) -> -doSmth() : * NEW: call(doSmth, doSmth) -> -{ doSmth() } : * COPY -list : {<: Any?} NEW: r(list) -> -null : {<: Any?} NEW: r(null) -> -list != null : Boolean NEW: call(!=, equals|, ) -> -try { doSmth() } finally { if(list != null) { } } : * COPY -{ try { doSmth() } finally { if(list != null) { } } } : * COPY + : {<: List?} NEW: magic(list: List?) -> +doSmth() : * NEW: call(doSmth(), doSmth) -> +{ doSmth() } : * COPY +list : {<: Any?} NEW: r(list) -> +null : {<: Any?} NEW: r(null) -> +list != null : Boolean NEW: call(list != null, equals|, ) -> +try { doSmth() } finally { if(list != null) { } } : * COPY +{ try { doSmth() } finally { if(list != null) { } } } : * COPY ===================== diff --git a/compiler/testData/cfg/controlStructures/For.instructions b/compiler/testData/cfg/controlStructures/For.instructions index 399d662f15f..9d2f798ed32 100644 --- a/compiler/testData/cfg/controlStructures/For.instructions +++ b/compiler/testData/cfg/controlStructures/For.instructions @@ -11,7 +11,7 @@ L0: 3 r(1) -> r(2) -> mark(1..2) - call(.., rangeTo|, ) -> + call(1..2, rangeTo|, ) -> v(i) L3: jmp?(L2) NEXT:[read (Unit), magic(1..2|) -> ] @@ -23,7 +23,7 @@ L5 [body entry point]: 4 mark({ doSmth(i) }) r(i) -> mark(doSmth(i)) - call(doSmth, doSmth|) -> + call(doSmth(i), doSmth|) -> 3 jmp?(L4 [loop entry point]) NEXT:[magic(1..2|) -> , read (Unit)] L2: read (Unit) PREV:[jmp?(L2), jmp?(L4 [loop entry point])] diff --git a/compiler/testData/cfg/controlStructures/For.values b/compiler/testData/cfg/controlStructures/For.values index 2d7fb08589b..98bc6ae4dfd 100644 --- a/compiler/testData/cfg/controlStructures/For.values +++ b/compiler/testData/cfg/controlStructures/For.values @@ -5,13 +5,13 @@ fun t1() { } } --------------------- - : Int NEW: magic(1..2|) -> -1 : Int NEW: r(1) -> -2 : Int NEW: r(2) -> -1..2 : {<: Iterable} NEW: call(.., rangeTo|, ) -> -i : Int NEW: r(i) -> -doSmth(i) : * NEW: call(doSmth, doSmth|) -> -{ doSmth(i) } : * COPY + : Int NEW: magic(1..2|) -> +1 : Int NEW: r(1) -> +2 : Int NEW: r(2) -> +1..2 : {<: Iterable} NEW: call(1..2, rangeTo|, ) -> +i : Int NEW: r(i) -> +doSmth(i) : * NEW: call(doSmth(i), doSmth|) -> +{ doSmth(i) } : * COPY ===================== == doSmth == fun doSmth(i: Int) {} diff --git a/compiler/testData/cfg/controlStructures/If.instructions b/compiler/testData/cfg/controlStructures/If.instructions index 3393470ce8a..d9e58d0946e 100644 --- a/compiler/testData/cfg/controlStructures/If.instructions +++ b/compiler/testData/cfg/controlStructures/If.instructions @@ -36,7 +36,7 @@ L2: L3: r(u) -> PREV:[jmp(L3), read (Unit)] mark(doSmth(u)) - call(doSmth, doSmth|) -> + call(doSmth(u), doSmth|) -> v(var r: String) mark(if (b) { r = "s" } else { r = "t" }) r(b) -> @@ -54,7 +54,7 @@ L4: L5: 2 r(r) -> PREV:[jmp(L5), w(r|)] mark(doSmth(r)) - call(doSmth, doSmth|) -> + call(doSmth(r), doSmth|) -> L1: 1 NEXT:[] error: @@ -94,7 +94,7 @@ L2: L3: r(i) -> mark(doSmth(i)) - call(doSmth, doSmth|) -> + call(doSmth(i), doSmth|) -> mark(if (i is Int) { return; }) mark(i is Int) r(i) -> diff --git a/compiler/testData/cfg/controlStructures/If.values b/compiler/testData/cfg/controlStructures/If.values index 726b9ced804..ae504962861 100644 --- a/compiler/testData/cfg/controlStructures/If.values +++ b/compiler/testData/cfg/controlStructures/If.values @@ -16,17 +16,17 @@ fun t1(b: Boolean) { doSmth(r) } --------------------- - : Boolean NEW: magic(b: Boolean) -> -b : Boolean NEW: r(b) -> -"s" : String NEW: r("s") -> -u : String NEW: r(u) -> -doSmth(u) : * NEW: call(doSmth, doSmth|) -> -b : Boolean NEW: r(b) -> -"s" : String NEW: r("s") -> -"t" : String NEW: r("t") -> -r : String NEW: r(r) -> -doSmth(r) : * NEW: call(doSmth, doSmth|) -> -{ var u: String if (b) { u = "s" } doSmth(u) var r: String if (b) { r = "s" } else { r = "t" } doSmth(r) } : * COPY + : Boolean NEW: magic(b: Boolean) -> +b : Boolean NEW: r(b) -> +"s" : String NEW: r("s") -> +u : String NEW: r(u) -> +doSmth(u) : * NEW: call(doSmth(u), doSmth|) -> +b : Boolean NEW: r(b) -> +"s" : String NEW: r("s") -> +"t" : String NEW: r("t") -> +r : String NEW: r(r) -> +doSmth(r) : * NEW: call(doSmth(r), doSmth|) -> +{ var u: String if (b) { u = "s" } doSmth(u) var r: String if (b) { r = "s" } else { r = "t" } doSmth(r) } : * COPY ===================== == t2 == fun t2(b: Boolean) { @@ -40,13 +40,13 @@ fun t2(b: Boolean) { } } --------------------- - : Boolean NEW: magic(b: Boolean) -> -3 : Int NEW: r(3) -> -b : Boolean NEW: r(b) -> -i : String NEW: r(i) -> -doSmth(i) : * NEW: call(doSmth, doSmth|) -> -i : * NEW: r(i) -> -i is Int : Boolean NEW: magic(i is Int|) -> + : Boolean NEW: magic(b: Boolean) -> +3 : Int NEW: r(3) -> +b : Boolean NEW: r(b) -> +i : String NEW: r(i) -> +doSmth(i) : * NEW: call(doSmth(i), doSmth|) -> +i : * NEW: r(i) -> +i is Int : Boolean NEW: magic(i is Int|) -> ===================== == doSmth == fun doSmth(s: String) {} diff --git a/compiler/testData/cfg/controlStructures/OnlyWhileInFunctionBody.instructions b/compiler/testData/cfg/controlStructures/OnlyWhileInFunctionBody.instructions index 452cda3860e..0955b072dec 100644 --- a/compiler/testData/cfg/controlStructures/OnlyWhileInFunctionBody.instructions +++ b/compiler/testData/cfg/controlStructures/OnlyWhileInFunctionBody.instructions @@ -10,24 +10,24 @@ L0: 2 mark({ while(0 > 1) { 2 } }) L2 [loop entry point]: L5 [condition entry point]: - r(0) -> PREV:[mark({ while(0 > 1) { 2 } }), jmp(L2 [loop entry point])] + r(0) -> PREV:[mark({ while(0 > 1) { 2 } }), jmp(L2 [loop entry point])] r(1) -> mark(0 > 1) - call(>, compareTo|, ) -> + call(0 > 1, compareTo|, ) -> mark(while(0 > 1) { 2 }) - jf(L3 [loop exit point]|) NEXT:[read (Unit), mark({ 2 })] + jf(L3 [loop exit point]|) NEXT:[read (Unit), mark({ 2 })] L4 [body entry point]: 3 mark({ 2 }) r(2) -> - 2 jmp(L2 [loop entry point]) NEXT:[r(0) -> ] + 2 jmp(L2 [loop entry point]) NEXT:[r(0) -> ] L3 [loop exit point]: - read (Unit) PREV:[jf(L3 [loop exit point]|)] + read (Unit) PREV:[jf(L3 [loop exit point]|)] L1: - 1 NEXT:[] + 1 NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== == dowhile == fun dowhile() { @@ -42,19 +42,19 @@ L0: L2 [loop entry point]: L4 [body entry point]: mark({return}) - ret L1 NEXT:[] + ret L1 NEXT:[] L5 [condition entry point]: -- r(0) -> PREV:[] -- r(1) -> PREV:[] -- mark(0 > 1) PREV:[] -- call(>, compareTo|, ) -> PREV:[] -- jt(L2 [loop entry point]|) NEXT:[read (Unit), mark({return})] PREV:[] +- r(0) -> PREV:[] +- r(1) -> PREV:[] +- mark(0 > 1) PREV:[] +- call(0 > 1, compareTo|, ) -> PREV:[] +- jt(L2 [loop entry point]|) NEXT:[read (Unit), mark({return})] PREV:[] L3 [loop exit point]: -- read (Unit) PREV:[] +- read (Unit) PREV:[] L1: - 1 NEXT:[] PREV:[ret L1] + 1 NEXT:[] PREV:[ret L1] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== diff --git a/compiler/testData/cfg/controlStructures/OnlyWhileInFunctionBody.values b/compiler/testData/cfg/controlStructures/OnlyWhileInFunctionBody.values index eeee63fd336..e27c2bd5512 100644 --- a/compiler/testData/cfg/controlStructures/OnlyWhileInFunctionBody.values +++ b/compiler/testData/cfg/controlStructures/OnlyWhileInFunctionBody.values @@ -5,11 +5,11 @@ fun main() { } } --------------------- -0 : {<: Comparable} NEW: r(0) -> -1 : Int NEW: r(1) -> -0 > 1 : Boolean NEW: call(>, compareTo|, ) -> -2 : * NEW: r(2) -> -{ 2 } : * COPY +0 : {<: Comparable} NEW: r(0) -> +1 : Int NEW: r(1) -> +0 > 1 : Boolean NEW: call(0 > 1, compareTo|, ) -> +2 : * NEW: r(2) -> +{ 2 } : * COPY ===================== == dowhile == fun dowhile() { @@ -17,7 +17,7 @@ fun dowhile() { while(0 > 1) } --------------------- -0 : * NEW: r(0) -> -1 : * NEW: r(1) -> -0 > 1 : * NEW: call(>, compareTo|, ) -> +0 : * NEW: r(0) -> +1 : * NEW: r(1) -> +0 > 1 : * NEW: call(0 > 1, compareTo|, ) -> ===================== diff --git a/compiler/testData/cfg/controlStructures/returnsInWhen.values b/compiler/testData/cfg/controlStructures/returnsInWhen.values index 0bb026b5228..edef58283ef 100644 --- a/compiler/testData/cfg/controlStructures/returnsInWhen.values +++ b/compiler/testData/cfg/controlStructures/returnsInWhen.values @@ -5,8 +5,8 @@ fun illegalWhenBlock(a: Any): Any { } } --------------------- - : {<: Any} NEW: magic(a: Any) -> + : {<: Any} NEW: magic(a: Any) -> : * NEW: magic(is Int|) -> -a : * NEW: r(a) -> -a : {<: Any} NEW: r(a) -> +a : * NEW: r(a) -> +a : {<: Any} NEW: r(a) -> ===================== diff --git a/compiler/testData/cfg/conventions/bothReceivers.instructions b/compiler/testData/cfg/conventions/bothReceivers.instructions index ee01e13b419..c8f051e0d0e 100644 --- a/compiler/testData/cfg/conventions/bothReceivers.instructions +++ b/compiler/testData/cfg/conventions/bothReceivers.instructions @@ -53,13 +53,13 @@ L0: mark(Bar().f()) r(f) -> mark(Bar()) - call(Bar, ) -> + call(Bar(), ) -> mark(f()) - call(f, invoke|, ) -> + call(f(), invoke|, ) -> L1: - 1 NEXT:[] + 1 NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== diff --git a/compiler/testData/cfg/conventions/bothReceivers.values b/compiler/testData/cfg/conventions/bothReceivers.values index eca297a429b..4ba909a308c 100644 --- a/compiler/testData/cfg/conventions/bothReceivers.values +++ b/compiler/testData/cfg/conventions/bothReceivers.values @@ -19,9 +19,9 @@ fun foobar(f: Foo) { } --------------------- : Foo NEW: magic(f: Foo) -> -Bar() : Bar NEW: call(Bar, ) -> +Bar() : Bar NEW: call(Bar(), ) -> f : Foo NEW: r(f) -> -f() : * NEW: call(f, invoke|, ) -> +f() : * NEW: call(f(), invoke|, ) -> Bar().f() : * COPY { Bar().f() } : * COPY ===================== diff --git a/compiler/testData/cfg/conventions/equals.instructions b/compiler/testData/cfg/conventions/equals.instructions index d8431a598c6..eed924e06ee 100644 --- a/compiler/testData/cfg/conventions/equals.instructions +++ b/compiler/testData/cfg/conventions/equals.instructions @@ -17,18 +17,18 @@ L0: r(a) -> r(b) -> mark(a == b) - call(==, equals|, ) -> - jf(L2|) NEXT:[read (Unit), mark({ })] + call(a == b, equals|, ) -> + jf(L2|) NEXT:[read (Unit), mark({ })] 3 mark({ }) read (Unit) - 2 jmp(L3) NEXT:[] + 2 jmp(L3) NEXT:[] L2: - read (Unit) PREV:[jf(L2|)] + read (Unit) PREV:[jf(L2|)] L1: L3: - 1 NEXT:[] PREV:[jmp(L3), read (Unit)] + 1 NEXT:[] PREV:[jmp(L3), read (Unit)] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== diff --git a/compiler/testData/cfg/conventions/equals.values b/compiler/testData/cfg/conventions/equals.values index e59d786eaaf..85115541193 100644 --- a/compiler/testData/cfg/conventions/equals.values +++ b/compiler/testData/cfg/conventions/equals.values @@ -8,5 +8,5 @@ fun foo(a: Int, b: Int) { : Int NEW: magic(b: Int) -> a : OR{{<: Any}, {<: Any}} NEW: r(a) -> b : {<: Any?} NEW: r(b) -> -a == b : Boolean NEW: call(==, equals|, ) -> +a == b : Boolean NEW: call(a == b, equals|, ) -> ===================== diff --git a/compiler/testData/cfg/conventions/incrementAtTheEnd.instructions b/compiler/testData/cfg/conventions/incrementAtTheEnd.instructions index 030decbcc89..c8b7072ce91 100644 --- a/compiler/testData/cfg/conventions/incrementAtTheEnd.instructions +++ b/compiler/testData/cfg/conventions/incrementAtTheEnd.instructions @@ -12,12 +12,12 @@ L0: w(i|) r(i) -> mark(i++) - call(++, inc|) -> + call(i++, inc|) -> w(i|) L1: - 1 NEXT:[] + 1 NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== diff --git a/compiler/testData/cfg/conventions/invoke.instructions b/compiler/testData/cfg/conventions/invoke.instructions index 9c282e0116d..6fdd1cd4d7b 100644 --- a/compiler/testData/cfg/conventions/invoke.instructions +++ b/compiler/testData/cfg/conventions/invoke.instructions @@ -11,11 +11,11 @@ L0: 2 mark({ f() }) r(f) -> mark(f()) - call(f, invoke|) -> + call(f(), invoke|) -> L1: - 1 NEXT:[] + 1 NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== diff --git a/compiler/testData/cfg/conventions/invoke.values b/compiler/testData/cfg/conventions/invoke.values index a4f83479e29..67afd6d5b04 100644 --- a/compiler/testData/cfg/conventions/invoke.values +++ b/compiler/testData/cfg/conventions/invoke.values @@ -5,6 +5,6 @@ fun foo(f: () -> Unit) { --------------------- : {<: () -> Unit} NEW: magic(f: () -> Unit) -> f : {<: () -> Unit} NEW: r(f) -> -f() : * NEW: call(f, invoke|) -> +f() : * NEW: call(f(), invoke|) -> { f() } : * COPY ===================== diff --git a/compiler/testData/cfg/conventions/notEqual.instructions b/compiler/testData/cfg/conventions/notEqual.instructions index 98d8a17ae84..b4f3d7715d7 100644 --- a/compiler/testData/cfg/conventions/notEqual.instructions +++ b/compiler/testData/cfg/conventions/notEqual.instructions @@ -16,18 +16,18 @@ L0: r(a) -> r(b) -> mark(a != b) - call(!=, equals|, ) -> - jf(L2|) NEXT:[read (Unit), mark({})] + call(a != b, equals|, ) -> + jf(L2|) NEXT:[read (Unit), mark({})] 3 mark({}) read (Unit) - 2 jmp(L3) NEXT:[] + 2 jmp(L3) NEXT:[] L2: - read (Unit) PREV:[jf(L2|)] + read (Unit) PREV:[jf(L2|)] L1: L3: - 1 NEXT:[] PREV:[jmp(L3), read (Unit)] + 1 NEXT:[] PREV:[jmp(L3), read (Unit)] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== diff --git a/compiler/testData/cfg/conventions/notEqual.values b/compiler/testData/cfg/conventions/notEqual.values index 07315fcaa79..1d9133a0f24 100644 --- a/compiler/testData/cfg/conventions/notEqual.values +++ b/compiler/testData/cfg/conventions/notEqual.values @@ -7,5 +7,5 @@ fun neq(a: Int, b: Int) { : Int NEW: magic(b: Int) -> a : OR{{<: Any}, {<: Any}} NEW: r(a) -> b : {<: Any?} NEW: r(b) -> -a != b : Boolean NEW: call(!=, equals|, ) -> +a != b : Boolean NEW: call(a != b, equals|, ) -> ===================== diff --git a/compiler/testData/cfg/deadCode/DeadCode.instructions b/compiler/testData/cfg/deadCode/DeadCode.instructions index 1133752c989..d2f50e1096e 100644 --- a/compiler/testData/cfg/deadCode/DeadCode.instructions +++ b/compiler/testData/cfg/deadCode/DeadCode.instructions @@ -9,10 +9,10 @@ L0: 2 mark({ throw Exception() test() }) mark(throw Exception()) mark(Exception()) - call(Exception, ) -> + call(Exception(), ) -> throw (throw Exception()|) NEXT:[] - mark(test()) PREV:[] -- call(test, test) -> PREV:[] +- call(test(), test) -> PREV:[] L1: 1 NEXT:[] PREV:[] error: diff --git a/compiler/testData/cfg/deadCode/DeadCode.values b/compiler/testData/cfg/deadCode/DeadCode.values index 29bc8914e7e..a209d595651 100644 --- a/compiler/testData/cfg/deadCode/DeadCode.values +++ b/compiler/testData/cfg/deadCode/DeadCode.values @@ -4,7 +4,7 @@ fun test() { test() } --------------------- -Exception() : {<: Throwable} NEW: call(Exception, ) -> -test() : * NEW: call(test, test) -> -{ throw Exception() test() } : * COPY +Exception() : {<: Throwable} NEW: call(Exception(), ) -> +test() : * NEW: call(test(), test) -> +{ throw Exception() test() } : * COPY ===================== diff --git a/compiler/testData/cfg/deadCode/returnInElvis.values b/compiler/testData/cfg/deadCode/returnInElvis.values index e92efdc7e4c..85d0877ad46 100644 --- a/compiler/testData/cfg/deadCode/returnInElvis.values +++ b/compiler/testData/cfg/deadCode/returnInElvis.values @@ -4,6 +4,6 @@ fun foo() { } --------------------- null : * NEW: r(null) -> -return ?: null : * COPY -{ return ?: null } : * COPY +return ?: null : * COPY +{ return ?: null } : * COPY ===================== diff --git a/compiler/testData/cfg/deadCode/stringTemplate.instructions b/compiler/testData/cfg/deadCode/stringTemplate.instructions index 34f302d0504..8ce2cfe7b12 100644 --- a/compiler/testData/cfg/deadCode/stringTemplate.instructions +++ b/compiler/testData/cfg/deadCode/stringTemplate.instructions @@ -9,7 +9,7 @@ L0: mark("${throw Exception()} ${1}") mark(throw Exception()) mark(Exception()) - call(Exception, ) -> + call(Exception(), ) -> throw (throw Exception()|) NEXT:[] - r(1) -> PREV:[] - magic("${throw Exception()} ${1}"|) -> PREV:[] diff --git a/compiler/testData/cfg/deadCode/stringTemplate.values b/compiler/testData/cfg/deadCode/stringTemplate.values index 3c358f7060f..d869c7b22d3 100644 --- a/compiler/testData/cfg/deadCode/stringTemplate.values +++ b/compiler/testData/cfg/deadCode/stringTemplate.values @@ -3,7 +3,7 @@ fun test() { "${throw Exception()} ${1}" } --------------------- -Exception() : {<: Throwable} NEW: call(Exception, ) -> +Exception() : {<: Throwable} NEW: call(Exception(), ) -> 1 : * NEW: r(1) -> "${throw Exception()} ${1}" : * NEW: magic("${throw Exception()} ${1}"|) -> { "${throw Exception()} ${1}" } : * COPY diff --git a/compiler/testData/cfg/declarations/classesAndObjects/AnonymousInitializers.values b/compiler/testData/cfg/declarations/classesAndObjects/AnonymousInitializers.values index 9ece51d6f23..19c74ff5625 100644 --- a/compiler/testData/cfg/declarations/classesAndObjects/AnonymousInitializers.values +++ b/compiler/testData/cfg/declarations/classesAndObjects/AnonymousInitializers.values @@ -17,7 +17,7 @@ class AnonymousInitializers() { --------------------- : AnonymousInitializers NEW: magic($i) -> : AnonymousInitializers NEW: magic($i) -> -34 : Int NEW: r(34) -> -12 : Int NEW: r(12) -> -13 : Int NEW: r(13) -> -===================== +34 : Int NEW: r(34) -> +12 : Int NEW: r(12) -> +13 : Int NEW: r(13) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/declarations/functions/FailFunction.instructions b/compiler/testData/cfg/declarations/functions/FailFunction.instructions index 91d68d25eb7..e122701c675 100644 --- a/compiler/testData/cfg/declarations/functions/FailFunction.instructions +++ b/compiler/testData/cfg/declarations/functions/FailFunction.instructions @@ -9,7 +9,7 @@ L0: mark(throw java.lang.RuntimeException()) mark(java.lang.RuntimeException()) mark(RuntimeException()) - call(RuntimeException, ) -> + call(RuntimeException(), ) -> throw (throw java.lang.RuntimeException()|) NEXT:[] L1: 1 NEXT:[] PREV:[] diff --git a/compiler/testData/cfg/declarations/functions/FailFunction.values b/compiler/testData/cfg/declarations/functions/FailFunction.values index 7c185a25542..f92e648ea4d 100644 --- a/compiler/testData/cfg/declarations/functions/FailFunction.values +++ b/compiler/testData/cfg/declarations/functions/FailFunction.values @@ -3,6 +3,6 @@ fun fail() : Nothing { throw java.lang.RuntimeException() } --------------------- -RuntimeException() : {<: Throwable} NEW: call(RuntimeException, ) -> +RuntimeException() : {<: Throwable} NEW: call(RuntimeException(), ) -> java.lang.RuntimeException() : {<: Throwable} COPY ===================== diff --git a/compiler/testData/cfg/declarations/local/ObjectExpression.instructions b/compiler/testData/cfg/declarations/local/ObjectExpression.instructions index 11cf0c848e9..6ba8e240dc6 100644 --- a/compiler/testData/cfg/declarations/local/ObjectExpression.instructions +++ b/compiler/testData/cfg/declarations/local/ObjectExpression.instructions @@ -72,7 +72,7 @@ L0: mark(o.foo()) r(o) -> mark(foo()) - call(foo, foo|) -> + call(foo(), foo|) -> ret(*|) L1 L1: 1 NEXT:[] diff --git a/compiler/testData/cfg/declarations/local/ObjectExpression.values b/compiler/testData/cfg/declarations/local/ObjectExpression.values index 79ff8c63418..d2296f974c6 100644 --- a/compiler/testData/cfg/declarations/local/ObjectExpression.values +++ b/compiler/testData/cfg/declarations/local/ObjectExpression.values @@ -25,10 +25,10 @@ fun foo(b: B) : Int { return o.foo() } --------------------- - : B NEW: magic(b: B) -> -b : * NEW: r(b) -> + : B NEW: magic(b: B) -> +b : * NEW: r(b) -> object : A by b {} : NEW: r(object : A by b {}) -> -o : {<: A} NEW: r(o) -> -foo() : Int NEW: call(foo, foo|) -> -o.foo() : Int COPY -===================== +o : {<: A} NEW: r(o) -> +foo() : Int NEW: call(foo(), foo|) -> +o.foo() : Int COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/declarations/multiDeclaration/MultiDecl.values b/compiler/testData/cfg/declarations/multiDeclaration/MultiDecl.values index a77d27d818a..1ad0cd475a2 100644 --- a/compiler/testData/cfg/declarations/multiDeclaration/MultiDecl.values +++ b/compiler/testData/cfg/declarations/multiDeclaration/MultiDecl.values @@ -21,9 +21,9 @@ fun test(c: C) { val d = 1 } --------------------- - : C NEW: magic(c: C) -> + : C NEW: magic(c: C) -> a : Int NEW: call(a, component1|) -> b : Int NEW: call(b, component2|) -> -c : C NEW: r(c) -> -1 : Int NEW: r(1) -> +c : C NEW: r(c) -> +1 : Int NEW: r(1) -> ===================== diff --git a/compiler/testData/cfg/declarations/multiDeclaration/multiDeclarationWithError.values b/compiler/testData/cfg/declarations/multiDeclaration/multiDeclarationWithError.values index b4899b7ce04..ba8bab1e7b1 100644 --- a/compiler/testData/cfg/declarations/multiDeclaration/multiDeclarationWithError.values +++ b/compiler/testData/cfg/declarations/multiDeclaration/multiDeclarationWithError.values @@ -7,7 +7,7 @@ fun foo(x: Int) { : Int NEW: magic(x: Int) -> : {<: [ERROR : component1() return type]} NEW: magic(a|) -> : {<: [ERROR : component2() return type]} NEW: magic(b|) -> -x : * NEW: r(x) -> -a : * NEW: r(a) -> -{ val (a, b) = x a } : * COPY -===================== +x : * NEW: r(x) -> +a : * NEW: r(a) -> +{ val (a, b) = x a } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/declarations/properties/DelegatedProperty.instructions b/compiler/testData/cfg/declarations/properties/DelegatedProperty.instructions index 3ac918f8660..38a4cc10bab 100644 --- a/compiler/testData/cfg/declarations/properties/DelegatedProperty.instructions +++ b/compiler/testData/cfg/declarations/properties/DelegatedProperty.instructions @@ -38,14 +38,14 @@ L0: 1 v(val a = Delegate()) mark(Delegate()) - call(Delegate, ) -> + call(Delegate(), ) -> w(a|) L1: - NEXT:[] + NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== == b == val b by a diff --git a/compiler/testData/cfg/declarations/properties/DelegatedProperty.values b/compiler/testData/cfg/declarations/properties/DelegatedProperty.values index 832dbc60adc..faf84c641ed 100644 --- a/compiler/testData/cfg/declarations/properties/DelegatedProperty.values +++ b/compiler/testData/cfg/declarations/properties/DelegatedProperty.values @@ -7,14 +7,14 @@ class Delegate { == get == fun get(_this: Any, p: PropertyMetadata): Int = 0 --------------------- - : {<: Any} NEW: magic(_this: Any) -> + : {<: Any} NEW: magic(_this: Any) -> : {<: PropertyMetadata} NEW: magic(p: PropertyMetadata) -> -0 : Int NEW: r(0) -> +0 : Int NEW: r(0) -> ===================== == a == val a = Delegate() --------------------- -Delegate() : Delegate NEW: call(Delegate, ) -> +Delegate() : Delegate NEW: call(Delegate(), ) -> ===================== == b == val b by a diff --git a/compiler/testData/cfg/declarations/properties/backingFieldAccess.values b/compiler/testData/cfg/declarations/properties/backingFieldAccess.values index 111f192c242..26245e40deb 100644 --- a/compiler/testData/cfg/declarations/properties/backingFieldAccess.values +++ b/compiler/testData/cfg/declarations/properties/backingFieldAccess.values @@ -8,7 +8,7 @@ class C { } } --------------------- - : C NEW: magic($a) -> + : C NEW: magic($a) -> $a : * NEW: r($a|) -> -{ $a } : * COPY -===================== +{ $a } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.instructions b/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.instructions index 2f8dbad732c..6f6fb82579b 100644 --- a/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.instructions +++ b/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.instructions @@ -25,11 +25,11 @@ L0: r(this) -> r($bar|) -> mark("foo" + this.$bar) - call(+, plus|, ) -> + call("foo" + this.$bar, plus|, ) -> L1: - NEXT:[] + NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== diff --git a/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.values b/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.values index 3cfdf3bbabc..99c0a542f33 100644 --- a/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.values +++ b/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.values @@ -8,10 +8,10 @@ abstract class Bar { == foo == fun foo() = "foo" + this.$bar --------------------- -"foo" : String NEW: r("foo") -> -this : {<: Bar} COPY -this : {<: Bar} NEW: r(this) -> -$bar : {<: Any?} NEW: r($bar|) -> -this.$bar : {<: Any?} COPY -"foo" + this.$bar : String NEW: call(+, plus|, ) -> -===================== +"foo" : String NEW: r("foo") -> +this : {<: Bar} COPY +this : {<: Bar} NEW: r(this) -> +$bar : {<: Any?} NEW: r($bar|) -> +this.$bar : {<: Any?} COPY +"foo" + this.$bar : String NEW: call("foo" + this.$bar, plus|, ) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/Assignments.instructions b/compiler/testData/cfg/expressions/Assignments.instructions index a9368b3d1f3..f663f94b38c 100644 --- a/compiler/testData/cfg/expressions/Assignments.instructions +++ b/compiler/testData/cfg/expressions/Assignments.instructions @@ -40,7 +40,7 @@ L0: r(x) -> r(2) -> mark(x += 2) - call(+=, plus|, ) -> + call(x += 2, plus|, ) -> w(x|) mark(if (true) 1 else 2) r(true) -> @@ -68,7 +68,7 @@ L5: w(z|) v(val t = Test()) mark(Test()) - call(Test, ) -> + call(Test(), ) -> w(t|) r(t) -> r(1) -> @@ -78,7 +78,7 @@ L5: r(x|) -> r(1) -> mark(t.x += 1) - call(+=, plus|, ) -> + call(t.x += 1, plus|, ) -> r(t) -> w(t.x|, ) L1: diff --git a/compiler/testData/cfg/expressions/Assignments.values b/compiler/testData/cfg/expressions/Assignments.values index 41621efe835..8b3b66506e2 100644 --- a/compiler/testData/cfg/expressions/Assignments.values +++ b/compiler/testData/cfg/expressions/Assignments.values @@ -20,28 +20,28 @@ fun assignments() : Unit { t.x += 1 } --------------------- -1 : Int NEW: r(1) -> -2 : Int NEW: r(2) -> -x : Int NEW: r(x) -> -2 : Int NEW: r(2) -> -x += 2 : Int NEW: call(+=, plus|, ) -> -true : Boolean NEW: r(true) -> -1 : Int NEW: r(1) -> -2 : Int NEW: r(2) -> +1 : Int NEW: r(1) -> +2 : Int NEW: r(2) -> +x : Int NEW: r(x) -> +2 : Int NEW: r(2) -> +x += 2 : Int NEW: call(x += 2, plus|, ) -> +true : Boolean NEW: r(true) -> +1 : Int NEW: r(1) -> +2 : Int NEW: r(2) -> if (true) 1 else 2 : Int NEW: merge(if (true) 1 else 2|, ) -> -true : Boolean NEW: r(true) -> -false : Boolean NEW: r(false) -> -true && false : Boolean NEW: magic(true && false|, ) -> -false : Boolean NEW: r(false) -> -true : Boolean NEW: r(true) -> -false && true : Boolean NEW: magic(false && true|, ) -> -Test() : Test NEW: call(Test, ) -> -t : Test NEW: r(t) -> -1 : Int NEW: r(1) -> -t : Test NEW: r(t) -> -x : Int NEW: r(x|) -> -t.x : Int COPY -1 : Int NEW: r(1) -> -t.x += 1 : Int NEW: call(+=, plus|, ) -> -{ var x = 1 x = 2 x += 2 x = if (true) 1 else 2 val y = true && false val z = false && true val t = Test(); t.x = 1 t.x += 1 } : Int COPY -===================== +true : Boolean NEW: r(true) -> +false : Boolean NEW: r(false) -> +true && false : Boolean NEW: magic(true && false|, ) -> +false : Boolean NEW: r(false) -> +true : Boolean NEW: r(true) -> +false && true : Boolean NEW: magic(false && true|, ) -> +Test() : Test NEW: call(Test(), ) -> +t : Test NEW: r(t) -> +1 : Int NEW: r(1) -> +t : Test NEW: r(t) -> +x : Int NEW: r(x|) -> +t.x : Int COPY +1 : Int NEW: r(1) -> +t.x += 1 : Int NEW: call(t.x += 1, plus|, ) -> +{ var x = 1 x = 2 x += 2 x = if (true) 1 else 2 val y = true && false val z = false && true val t = Test(); t.x = 1 t.x += 1 } : Int COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/LazyBooleans.values b/compiler/testData/cfg/expressions/LazyBooleans.values index e3e4b0127e9..35f799025ea 100644 --- a/compiler/testData/cfg/expressions/LazyBooleans.values +++ b/compiler/testData/cfg/expressions/LazyBooleans.values @@ -17,36 +17,36 @@ fun lazyBooleans(a : Boolean, b : Boolean) : Unit { 14 } --------------------- - : Boolean NEW: magic(a : Boolean) -> - : Boolean NEW: magic(b : Boolean) -> -a : Boolean NEW: r(a) -> -1 : * NEW: r(1) -> -{ 1 } : * COPY -2 : * NEW: r(2) -> -{ 2 } : * COPY + : Boolean NEW: magic(a : Boolean) -> + : Boolean NEW: magic(b : Boolean) -> +a : Boolean NEW: r(a) -> +1 : * NEW: r(1) -> +{ 1 } : * COPY +2 : * NEW: r(2) -> +{ 2 } : * COPY if (a) { 1 } else { 2 } : * NEW: merge(if (a) { 1 } else { 2 }|, ) -> -3 : * NEW: r(3) -> -a : Boolean NEW: r(a) -> -b : Boolean NEW: r(b) -> -a && b : Boolean NEW: magic(a && b|, ) -> -5 : * NEW: r(5) -> -6 : * NEW: r(6) -> +3 : * NEW: r(3) -> +a : Boolean NEW: r(a) -> +b : Boolean NEW: r(b) -> +a && b : Boolean NEW: magic(a && b|, ) -> +5 : * NEW: r(5) -> +6 : * NEW: r(6) -> if (a && b) 5 else 6 : * NEW: merge(if (a && b) 5 else 6|, ) -> -7 : * NEW: r(7) -> -a : Boolean NEW: r(a) -> -b : Boolean NEW: r(b) -> -a || b : Boolean NEW: magic(a || b|, ) -> -8 : * NEW: r(8) -> -9 : * NEW: r(9) -> +7 : * NEW: r(7) -> +a : Boolean NEW: r(a) -> +b : Boolean NEW: r(b) -> +a || b : Boolean NEW: magic(a || b|, ) -> +8 : * NEW: r(8) -> +9 : * NEW: r(9) -> if (a || b) 8 else 9 : * NEW: merge(if (a || b) 8 else 9|, ) -> -10 : * NEW: r(10) -> -a : Boolean NEW: r(a) -> -11 : * NEW: r(11) -> -if (a) 11 : * COPY -12 : * NEW: r(12) -> -a : Boolean NEW: r(a) -> -13 : * NEW: r(13) -> -if (a) else 13 : * COPY -14 : * NEW: r(14) -> -{ if (a) { 1 } else { 2 } 3 if (a && b) 5 else 6 7 if (a || b) 8 else 9 10 if (a) 11 12 if (a) else 13 14 } : * COPY -===================== +10 : * NEW: r(10) -> +a : Boolean NEW: r(a) -> +11 : * NEW: r(11) -> +if (a) 11 : * COPY +12 : * NEW: r(12) -> +a : Boolean NEW: r(a) -> +13 : * NEW: r(13) -> +if (a) else 13 : * COPY +14 : * NEW: r(14) -> +{ if (a) { 1 } else { 2 } 3 if (a && b) 5 else 6 7 if (a || b) 8 else 9 10 if (a) 11 12 if (a) else 13 14 } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/ReturnFromExpression.values b/compiler/testData/cfg/expressions/ReturnFromExpression.values index abb245b93c1..66b6edea253 100644 --- a/compiler/testData/cfg/expressions/ReturnFromExpression.values +++ b/compiler/testData/cfg/expressions/ReturnFromExpression.values @@ -3,8 +3,8 @@ fun blockAndAndMismatch() : Boolean { false || (return false) } --------------------- -false : Boolean NEW: r(false) -> -false : Boolean NEW: r(false) -> +false : Boolean NEW: r(false) -> +false : Boolean NEW: r(false) -> false || (return false) : * NEW: magic(false || (return false)|) -> -{ false || (return false) } : * COPY -===================== +{ false || (return false) } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/assignmentToThis.values b/compiler/testData/cfg/expressions/assignmentToThis.values index 71164f37f9f..de41bc207eb 100644 --- a/compiler/testData/cfg/expressions/assignmentToThis.values +++ b/compiler/testData/cfg/expressions/assignmentToThis.values @@ -4,5 +4,5 @@ fun Int.bar(c: C) { } --------------------- : {<: [ERROR : C]} NEW: magic(c: C) -> -c : * NEW: r(c) -> -===================== +c : * NEW: r(c) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/chainedQualifiedExpression.instructions b/compiler/testData/cfg/expressions/chainedQualifiedExpression.instructions index 427a9c29ff2..c07500535aa 100644 --- a/compiler/testData/cfg/expressions/chainedQualifiedExpression.instructions +++ b/compiler/testData/cfg/expressions/chainedQualifiedExpression.instructions @@ -89,135 +89,135 @@ L0: mark(BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) magic(BunchKeywordRegister()) -> mark(BunchKeywordRegister()) - call(BunchKeywordRegister, |) -> + call(BunchKeywordRegister(), |) -> r(ABSTRACT_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(FINAL_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(OPEN_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(INTERNAL_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , , ) -> + call(add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel), add|, , , , , ) -> r(PRIVATE_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , , ) -> + call(add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel), add|, , , , , ) -> r(PROTECTED_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , , ) -> + call(add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel), add|, , , , , ) -> r(PUBLIC_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , , ) -> + call(add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel), add|, , , , , ) -> r(CLASS_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(ENUM_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(FUN_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(GET_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(SET_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(TRAIT_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(VAL_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(VAR_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(TYPE_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel)) - call(add, add|, , , , ) -> + call(add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> r(IMPORT_KEYWORD) -> r(inTopLevel) -> mark(add(IMPORT_KEYWORD, inTopLevel)) - call(add, add|, , ) -> + call(add(IMPORT_KEYWORD, inTopLevel), add|, , ) -> r(PACKAGE_KEYWORD) -> r(inTopLevel) -> mark(add(PACKAGE_KEYWORD, inTopLevel)) - call(add, add|, , ) -> + call(add(PACKAGE_KEYWORD, inTopLevel), add|, , ) -> r(OVERRIDE_KEYWORD) -> r(inTopLevel) -> mark(add(OVERRIDE_KEYWORD, inTopLevel)) - call(add, add|, , ) -> + call(add(OVERRIDE_KEYWORD, inTopLevel), add|, , ) -> r(IN_KEYWORD) -> r(inTopLevel) -> r(inTopLevel) -> mark(add(IN_KEYWORD, inTopLevel, inTopLevel)) - call(add, add|, , , ) -> + call(add(IN_KEYWORD, inTopLevel, inTopLevel), add|, , , ) -> r(OUT_KEYWORD) -> r(inTopLevel) -> mark(add(OUT_KEYWORD, inTopLevel)) - call(add, add|, , ) -> + call(add(OUT_KEYWORD, inTopLevel), add|, , ) -> r(OBJECT_KEYWORD) -> error(unresolvedCode, No resolved call) magic(unresolvedCode) -> mark(add(OBJECT_KEYWORD, unresolvedCode)) - call(add, add|, , ) -> + call(add(OBJECT_KEYWORD, unresolvedCode), add|, , ) -> mark(registerAll()) - call(registerAll, registerAll|) -> + call(registerAll(), registerAll|) -> L1: 1 NEXT:[] error: @@ -232,7 +232,7 @@ L0: 1 v(val ABSTRACT_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(ABSTRACT_KEYWORD|) L1: NEXT:[] @@ -261,7 +261,7 @@ L0: 1 v(val OPEN_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(OPEN_KEYWORD|) L1: NEXT:[] @@ -277,7 +277,7 @@ L0: 1 v(val INTERNAL_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(INTERNAL_KEYWORD|) L1: NEXT:[] @@ -293,7 +293,7 @@ L0: 1 v(val PRIVATE_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(PRIVATE_KEYWORD|) L1: NEXT:[] @@ -309,7 +309,7 @@ L0: 1 v(val PROTECTED_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(PROTECTED_KEYWORD|) L1: NEXT:[] @@ -325,7 +325,7 @@ L0: 1 v(val PUBLIC_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(PUBLIC_KEYWORD|) L1: NEXT:[] @@ -341,7 +341,7 @@ L0: 1 v(val CLASS_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(CLASS_KEYWORD|) L1: NEXT:[] @@ -357,7 +357,7 @@ L0: 1 v(val ENUM_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(ENUM_KEYWORD|) L1: NEXT:[] @@ -373,14 +373,14 @@ L0: 1 v(val FUN_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(FUN_KEYWORD|) L1: - NEXT:[] + NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== == GET_KEYWORD == val GET_KEYWORD = JetToken() @@ -389,14 +389,14 @@ L0: 1 v(val GET_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(GET_KEYWORD|) L1: - NEXT:[] + NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== == SET_KEYWORD == val SET_KEYWORD = JetToken() @@ -405,14 +405,14 @@ L0: 1 v(val SET_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(SET_KEYWORD|) L1: - NEXT:[] + NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== == TRAIT_KEYWORD == val TRAIT_KEYWORD = JetToken() @@ -421,7 +421,7 @@ L0: 1 v(val TRAIT_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(TRAIT_KEYWORD|) L1: NEXT:[] @@ -437,14 +437,14 @@ L0: 1 v(val VAL_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(VAL_KEYWORD|) L1: - NEXT:[] + NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== == VAR_KEYWORD == val VAR_KEYWORD = JetToken() @@ -453,14 +453,14 @@ L0: 1 v(val VAR_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(VAR_KEYWORD|) L1: - NEXT:[] + NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== == TYPE_KEYWORD == val TYPE_KEYWORD = JetToken() @@ -469,7 +469,7 @@ L0: 1 v(val TYPE_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(TYPE_KEYWORD|) L1: NEXT:[] @@ -485,7 +485,7 @@ L0: 1 v(val IMPORT_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(IMPORT_KEYWORD|) L1: NEXT:[] @@ -501,7 +501,7 @@ L0: 1 v(val PACKAGE_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(PACKAGE_KEYWORD|) L1: NEXT:[] @@ -517,7 +517,7 @@ L0: 1 v(val OVERRIDE_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(OVERRIDE_KEYWORD|) L1: NEXT:[] @@ -533,14 +533,14 @@ L0: 1 v(val IN_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(IN_KEYWORD|) L1: - NEXT:[] + NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== == OUT_KEYWORD == val OUT_KEYWORD = JetToken() @@ -549,14 +549,14 @@ L0: 1 v(val OUT_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(OUT_KEYWORD|) L1: - NEXT:[] + NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== == OBJECT_KEYWORD == val OBJECT_KEYWORD = JetToken() @@ -565,7 +565,7 @@ L0: 1 v(val OBJECT_KEYWORD = JetToken()) mark(JetToken()) - call(JetToken, ) -> + call(JetToken(), ) -> w(OBJECT_KEYWORD|) L1: NEXT:[] diff --git a/compiler/testData/cfg/expressions/chainedQualifiedExpression.values b/compiler/testData/cfg/expressions/chainedQualifiedExpression.values index 4ae30f206ef..5b742f0c0c7 100644 --- a/compiler/testData/cfg/expressions/chainedQualifiedExpression.values +++ b/compiler/testData/cfg/expressions/chainedQualifiedExpression.values @@ -50,142 +50,142 @@ public open class JetKeywordCompletionContributor() { } } --------------------- - : {<: JetKeywordCompletionContributor} NEW: magic(BunchKeywordRegister()) -> -1.0 : Double NEW: r(1.0) -> -BunchKeywordRegister() : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(BunchKeywordRegister, |) -> -ABSTRACT_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(ABSTRACT_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -FINAL_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(FINAL_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -OPEN_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(OPEN_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -INTERNAL_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(INTERNAL_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -PRIVATE_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(PRIVATE_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -PROTECTED_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(PROTECTED_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -PUBLIC_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(PUBLIC_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -CLASS_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(CLASS_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -ENUM_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(ENUM_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -FUN_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(FUN_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -GET_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(GET_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -SET_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(SET_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -TRAIT_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(TRAIT_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -VAL_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(VAL_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -VAR_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(VAR_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -TYPE_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(TYPE_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -IMPORT_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(IMPORT_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(IMPORT_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -PACKAGE_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(PACKAGE_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(PACKAGE_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -OVERRIDE_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(OVERRIDE_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(OVERRIDE_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -IN_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(IN_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(IN_KEYWORD, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) .add(IN_KEYWORD, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -OUT_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(OUT_KEYWORD) -> -inTopLevel : Double NEW: r(inTopLevel) -> -add(OUT_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) .add(IN_KEYWORD, inTopLevel, inTopLevel) .add(OUT_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -OBJECT_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(OBJECT_KEYWORD) -> -unresolvedCode : Double NEW: magic(unresolvedCode) -> -add(OBJECT_KEYWORD, unresolvedCode) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add, add|, , ) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) .add(IN_KEYWORD, inTopLevel, inTopLevel) .add(OUT_KEYWORD, inTopLevel) .add(OBJECT_KEYWORD, unresolvedCode) : JetKeywordCompletionContributor.BunchKeywordRegister COPY -registerAll() : * NEW: call(registerAll, registerAll|) -> -BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) .add(IN_KEYWORD, inTopLevel, inTopLevel) .add(OUT_KEYWORD, inTopLevel) .add(OBJECT_KEYWORD, unresolvedCode) .registerAll() : * COPY -{ val inTopLevel = 1.0 BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) .add(IN_KEYWORD, inTopLevel, inTopLevel) .add(OUT_KEYWORD, inTopLevel) .add(OBJECT_KEYWORD, unresolvedCode) .registerAll() } : * COPY + : {<: JetKeywordCompletionContributor} NEW: magic(BunchKeywordRegister()) -> +1.0 : Double NEW: r(1.0) -> +BunchKeywordRegister() : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(BunchKeywordRegister(), |) -> +ABSTRACT_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(ABSTRACT_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +FINAL_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(FINAL_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +OPEN_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(OPEN_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +INTERNAL_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(INTERNAL_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel), add|, , , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +PRIVATE_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(PRIVATE_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel), add|, , , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +PROTECTED_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(PROTECTED_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel), add|, , , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +PUBLIC_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(PUBLIC_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel), add|, , , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +CLASS_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(CLASS_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +ENUM_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(ENUM_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +FUN_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(FUN_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +GET_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(GET_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +SET_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(SET_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +TRAIT_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(TRAIT_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +VAL_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(VAL_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +VAR_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(VAR_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +TYPE_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(TYPE_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel), add|, , , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +IMPORT_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(IMPORT_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(IMPORT_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(IMPORT_KEYWORD, inTopLevel), add|, , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +PACKAGE_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(PACKAGE_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(PACKAGE_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(PACKAGE_KEYWORD, inTopLevel), add|, , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +OVERRIDE_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(OVERRIDE_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(OVERRIDE_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(OVERRIDE_KEYWORD, inTopLevel), add|, , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +IN_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(IN_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(IN_KEYWORD, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(IN_KEYWORD, inTopLevel, inTopLevel), add|, , , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) .add(IN_KEYWORD, inTopLevel, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +OUT_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(OUT_KEYWORD) -> +inTopLevel : Double NEW: r(inTopLevel) -> +add(OUT_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(OUT_KEYWORD, inTopLevel), add|, , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) .add(IN_KEYWORD, inTopLevel, inTopLevel) .add(OUT_KEYWORD, inTopLevel) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +OBJECT_KEYWORD : {<: [ERROR : Type annotation was missing]} NEW: r(OBJECT_KEYWORD) -> +unresolvedCode : Double NEW: magic(unresolvedCode) -> +add(OBJECT_KEYWORD, unresolvedCode) : JetKeywordCompletionContributor.BunchKeywordRegister NEW: call(add(OBJECT_KEYWORD, unresolvedCode), add|, , ) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) .add(IN_KEYWORD, inTopLevel, inTopLevel) .add(OUT_KEYWORD, inTopLevel) .add(OBJECT_KEYWORD, unresolvedCode) : JetKeywordCompletionContributor.BunchKeywordRegister COPY +registerAll() : * NEW: call(registerAll(), registerAll|) -> +BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) .add(IN_KEYWORD, inTopLevel, inTopLevel) .add(OUT_KEYWORD, inTopLevel) .add(OBJECT_KEYWORD, unresolvedCode) .registerAll() : * COPY +{ val inTopLevel = 1.0 BunchKeywordRegister() .add(ABSTRACT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FINAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(OPEN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(INTERNAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PRIVATE_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PROTECTED_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(PUBLIC_KEYWORD, inTopLevel, inTopLevel, inTopLevel, inTopLevel) .add(CLASS_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(ENUM_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(FUN_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(GET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(SET_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TRAIT_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAL_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(VAR_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(TYPE_KEYWORD, inTopLevel, inTopLevel, inTopLevel) .add(IMPORT_KEYWORD, inTopLevel) .add(PACKAGE_KEYWORD, inTopLevel) .add(OVERRIDE_KEYWORD, inTopLevel) .add(IN_KEYWORD, inTopLevel, inTopLevel) .add(OUT_KEYWORD, inTopLevel) .add(OBJECT_KEYWORD, unresolvedCode) .registerAll() } : * COPY ===================== == ABSTRACT_KEYWORD == val ABSTRACT_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == FINAL_KEYWORD == val FINAL_KEYWORD OPEN_KEYWORD = JetToken() @@ -194,100 +194,100 @@ val FINAL_KEYWORD OPEN_KEYWORD = JetToken() == OPEN_KEYWORD == val OPEN_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == INTERNAL_KEYWORD == val INTERNAL_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == PRIVATE_KEYWORD == val PRIVATE_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == PROTECTED_KEYWORD == val PROTECTED_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == PUBLIC_KEYWORD == val PUBLIC_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == CLASS_KEYWORD == val CLASS_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == ENUM_KEYWORD == val ENUM_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == FUN_KEYWORD == val FUN_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == GET_KEYWORD == val GET_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == SET_KEYWORD == val SET_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == TRAIT_KEYWORD == val TRAIT_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == VAL_KEYWORD == val VAL_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == VAR_KEYWORD == val VAR_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == TYPE_KEYWORD == val TYPE_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == IMPORT_KEYWORD == val IMPORT_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == PACKAGE_KEYWORD == val PACKAGE_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == OVERRIDE_KEYWORD == val OVERRIDE_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == IN_KEYWORD == val IN_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == OUT_KEYWORD == val OUT_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> +JetToken() : JetToken NEW: call(JetToken(), ) -> ===================== == OBJECT_KEYWORD == val OBJECT_KEYWORD = JetToken() --------------------- -JetToken() : JetToken NEW: call(JetToken, ) -> -===================== +JetToken() : JetToken NEW: call(JetToken(), ) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/expressionAsFunction.instructions b/compiler/testData/cfg/expressions/expressionAsFunction.instructions index b83a5ff8b36..5e747c64ae3 100644 --- a/compiler/testData/cfg/expressions/expressionAsFunction.instructions +++ b/compiler/testData/cfg/expressions/expressionAsFunction.instructions @@ -12,11 +12,11 @@ L0: mark((f)) r(f) -> mark((f)()) - call((f), invoke|) -> + call((f)(), invoke|) -> L1: - 1 NEXT:[] + 1 NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== diff --git a/compiler/testData/cfg/expressions/expressionAsFunction.values b/compiler/testData/cfg/expressions/expressionAsFunction.values index db16ba62e4f..9ae991c34cf 100644 --- a/compiler/testData/cfg/expressions/expressionAsFunction.values +++ b/compiler/testData/cfg/expressions/expressionAsFunction.values @@ -3,9 +3,9 @@ fun invoke(f: () -> Unit) { (f)() } --------------------- - : {<: () -> Unit} NEW: magic(f: () -> Unit) -> -f : {<: () -> Unit} NEW: r(f) -> -(f) : {<: () -> Unit} COPY -(f)() : * NEW: call((f), invoke|) -> -{ (f)() } : * COPY -===================== + : {<: () -> Unit} NEW: magic(f: () -> Unit) -> +f : {<: () -> Unit} NEW: r(f) -> +(f) : {<: () -> Unit} COPY +(f)() : * NEW: call((f)(), invoke|) -> +{ (f)() } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/incdec.instructions b/compiler/testData/cfg/expressions/incdec.instructions index 5fa70363fa8..81f0257b6c4 100644 --- a/compiler/testData/cfg/expressions/incdec.instructions +++ b/compiler/testData/cfg/expressions/incdec.instructions @@ -34,28 +34,28 @@ L0: w(a|) r(a) -> mark(a++) - call(++, inc|) -> + call(a++, inc|) -> w(a|) mark(bar(a++)) - call(bar, bar|) -> + call(bar(a++), bar|) -> r(a) -> mark(a--) - call(--, dec|) -> + call(a--, dec|) -> w(a|) mark(bar(a--)) - call(bar, bar|) -> + call(bar(a--), bar|) -> r(a) -> mark(++a) - call(++, inc|) -> + call(++a, inc|) -> w(a|) mark(bar(++a)) - call(bar, bar|) -> + call(bar(++a), bar|) -> r(a) -> mark(--a) - call(--, dec|) -> + call(--a, dec|) -> w(a|) mark(bar(--a)) - call(bar, bar|) -> + call(bar(--a), bar|) -> L1: 1 NEXT:[] error: diff --git a/compiler/testData/cfg/expressions/incdec.values b/compiler/testData/cfg/expressions/incdec.values index c90940b7858..bccf6cd82ec 100644 --- a/compiler/testData/cfg/expressions/incdec.values +++ b/compiler/testData/cfg/expressions/incdec.values @@ -14,18 +14,18 @@ fun foo() { bar(--a) } --------------------- -1 : Int NEW: r(1) -> -a : Int NEW: r(a) -> -a++ : Int COPY -bar(a++) : * NEW: call(bar, bar|) -> -a : Int NEW: r(a) -> -a-- : Int COPY -bar(a--) : * NEW: call(bar, bar|) -> -a : Int NEW: r(a) -> -++a : Int NEW: call(++, inc|) -> -bar(++a) : * NEW: call(bar, bar|) -> -a : Int NEW: r(a) -> ---a : Int NEW: call(--, dec|) -> -bar(--a) : * NEW: call(bar, bar|) -> -{ var a = 1 bar(a++) bar(a--) bar(++a) bar(--a) } : * COPY -===================== +1 : Int NEW: r(1) -> +a : Int NEW: r(a) -> +a++ : Int COPY +bar(a++) : * NEW: call(bar(a++), bar|) -> +a : Int NEW: r(a) -> +a-- : Int COPY +bar(a--) : * NEW: call(bar(a--), bar|) -> +a : Int NEW: r(a) -> +++a : Int NEW: call(++a, inc|) -> +bar(++a) : * NEW: call(bar(++a), bar|) -> +a : Int NEW: r(a) -> +--a : Int NEW: call(--a, dec|) -> +bar(--a) : * NEW: call(bar(--a), bar|) -> +{ var a = 1 bar(a++) bar(a--) bar(++a) bar(--a) } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/nothingExpr.instructions b/compiler/testData/cfg/expressions/nothingExpr.instructions index 21a743f846e..ceb92166aab 100644 --- a/compiler/testData/cfg/expressions/nothingExpr.instructions +++ b/compiler/testData/cfg/expressions/nothingExpr.instructions @@ -19,14 +19,14 @@ L0: 1 mark(throw Exception()) mark(Exception()) - call(Exception, ) -> - throw (throw Exception()|) NEXT:[] + call(Exception(), ) -> + throw (throw Exception()|) NEXT:[] L1: - NEXT:[] PREV:[] + NEXT:[] PREV:[] error: - PREV:[throw (throw Exception()|)] + PREV:[throw (throw Exception()|)] sink: - PREV:[, ] + PREV:[, ] ===================== == foo == fun foo() { @@ -42,10 +42,10 @@ L0: magic(null!!|) -> jmp(error) NEXT:[] - mark(doSomething()) PREV:[] -- call(doSomething, doSomething|) -> PREV:[] +- call(doSomething(), doSomething|) -> PREV:[] - mark(bar().doSomething) PREV:[] - mark(bar()) PREV:[] -- call(bar, bar) PREV:[] +- call(bar(), bar) PREV:[] - jmp(error) NEXT:[] PREV:[] - mark(doSomething) PREV:[] - call(doSomething, doSomething) -> PREV:[] diff --git a/compiler/testData/cfg/expressions/nothingExpr.values b/compiler/testData/cfg/expressions/nothingExpr.values index a226abc4840..76dcacc87cc 100644 --- a/compiler/testData/cfg/expressions/nothingExpr.values +++ b/compiler/testData/cfg/expressions/nothingExpr.values @@ -5,7 +5,7 @@ fun Any?.doSomething() {} == bar == fun bar(): Nothing = throw Exception() --------------------- -Exception() : {<: Throwable} NEW: call(Exception, ) -> +Exception() : {<: Throwable} NEW: call(Exception(), ) -> ===================== == foo == fun foo() { @@ -13,11 +13,11 @@ fun foo() { bar().doSomething } --------------------- -null : * NEW: r(null) -> -null!! : * NEW: magic(null!!|) -> -doSomething() : * NEW: call(doSomething, doSomething|) -> -null!!.doSomething() : * COPY -doSomething : * NEW: call(doSomething, doSomething) -> -bar().doSomething : * COPY -{ null!!.doSomething() bar().doSomething } : * COPY -===================== +null : * NEW: r(null) -> +null!! : * NEW: magic(null!!|) -> +doSomething() : * NEW: call(doSomething(), doSomething|) -> +null!!.doSomething() : * COPY +doSomething : * NEW: call(doSomething, doSomething) -> +bar().doSomething : * COPY +{ null!!.doSomething() bar().doSomething } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/propertySafeCall.values b/compiler/testData/cfg/expressions/propertySafeCall.values index 67972a084ca..625fa9d6ebd 100644 --- a/compiler/testData/cfg/expressions/propertySafeCall.values +++ b/compiler/testData/cfg/expressions/propertySafeCall.values @@ -4,8 +4,8 @@ fun test(s: String?) { } --------------------- : {<: String?} NEW: magic(s: String?) -> -s : {<: CharSequence?} NEW: r(s) -> -length : * NEW: r(length|) -> -s?.length : * COPY -{ s?.length } : * COPY -===================== +s : {<: CharSequence?} NEW: r(s) -> +length : * NEW: r(length|) -> +s?.length : * COPY +{ s?.length } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/qualifiedExpressionWithoutSelector.values b/compiler/testData/cfg/expressions/qualifiedExpressionWithoutSelector.values index bb53a1e0aeb..b6f1cc5537a 100644 --- a/compiler/testData/cfg/expressions/qualifiedExpressionWithoutSelector.values +++ b/compiler/testData/cfg/expressions/qualifiedExpressionWithoutSelector.values @@ -4,7 +4,7 @@ fun foo(s: String) { } --------------------- : String NEW: magic(s: String) -> -s : * NEW: r(s) -> -s. : * NEW: magic(s.|) -> -{ s. } : * COPY -===================== +s : * NEW: r(s) -> +s. : * NEW: magic(s.|) -> +{ s. } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/thisExpression.instructions b/compiler/testData/cfg/expressions/thisExpression.instructions index 06837379bba..f28883915d4 100644 --- a/compiler/testData/cfg/expressions/thisExpression.instructions +++ b/compiler/testData/cfg/expressions/thisExpression.instructions @@ -7,11 +7,11 @@ L0: 1 2 mark({ this() }) mark(this()) - call(this, invoke) -> + call(this(), invoke) -> L1: - 1 NEXT:[] + 1 NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== diff --git a/compiler/testData/cfg/expressions/thisExpression.values b/compiler/testData/cfg/expressions/thisExpression.values index df9ca0222e3..e4b94c8616b 100644 --- a/compiler/testData/cfg/expressions/thisExpression.values +++ b/compiler/testData/cfg/expressions/thisExpression.values @@ -3,6 +3,6 @@ fun Function0.foo() { this() } --------------------- -this() : * NEW: call(this, invoke) -> +this() : * NEW: call(this(), invoke) -> { this() } : * COPY -===================== +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/unresolvedCall.instructions b/compiler/testData/cfg/expressions/unresolvedCall.instructions index 3bfc2044c02..1ae229915e0 100644 --- a/compiler/testData/cfg/expressions/unresolvedCall.instructions +++ b/compiler/testData/cfg/expressions/unresolvedCall.instructions @@ -10,15 +10,15 @@ L0: w(a|) 2 mark({ a.foo() }) mark(a.foo()) - error(foo, No resolved call) + error(foo(), No resolved call) error(foo, No resolved call) r(a) -> mark(foo()) magic(foo()|) -> L1: - 1 NEXT:[] + 1 NEXT:[] error: - PREV:[] + PREV:[] sink: - PREV:[, ] + PREV:[, ] ===================== diff --git a/compiler/testData/cfg/expressions/unresolvedCall.values b/compiler/testData/cfg/expressions/unresolvedCall.values index 12b3fa41a60..94f904eab03 100644 --- a/compiler/testData/cfg/expressions/unresolvedCall.values +++ b/compiler/testData/cfg/expressions/unresolvedCall.values @@ -3,9 +3,9 @@ fun test(a: Any) { a.foo() } --------------------- - : {<: Any} NEW: magic(a: Any) -> -a : * NEW: r(a) -> + : {<: Any} NEW: magic(a: Any) -> +a : * NEW: r(a) -> foo() : * NEW: magic(foo()|) -> -a.foo() : * COPY -{ a.foo() } : * COPY -===================== +a.foo() : * COPY +{ a.foo() } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/unresolvedProperty.values b/compiler/testData/cfg/expressions/unresolvedProperty.values index d6e1b81d1bb..8b96a60a0d4 100644 --- a/compiler/testData/cfg/expressions/unresolvedProperty.values +++ b/compiler/testData/cfg/expressions/unresolvedProperty.values @@ -3,9 +3,9 @@ fun test(a: Any) { a.foo } --------------------- - : {<: Any} NEW: magic(a: Any) -> -a : * NEW: r(a) -> + : {<: Any} NEW: magic(a: Any) -> +a : * NEW: r(a) -> foo : * NEW: magic(foo|) -> -a.foo : * COPY -{ a.foo } : * COPY -===================== +a.foo : * COPY +{ a.foo } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/expressions/unusedExpressionSimpleName.values b/compiler/testData/cfg/expressions/unusedExpressionSimpleName.values index 70b9d6e3f52..bb8b0b2ad07 100644 --- a/compiler/testData/cfg/expressions/unusedExpressionSimpleName.values +++ b/compiler/testData/cfg/expressions/unusedExpressionSimpleName.values @@ -4,6 +4,6 @@ fun main(arg : Array) { } --------------------- : {<: Array} NEW: magic(arg : Array) -> -a : * NEW: magic(a) -> -{ a } : * COPY -===================== +a : * NEW: magic(a) -> +{ a } : * COPY +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/functions/DefaultValuesForArguments.instructions b/compiler/testData/cfg/functions/DefaultValuesForArguments.instructions index c7177b5ce53..ca4e1e2294c 100644 --- a/compiler/testData/cfg/functions/DefaultValuesForArguments.instructions +++ b/compiler/testData/cfg/functions/DefaultValuesForArguments.instructions @@ -16,7 +16,7 @@ L2 [after default value for parameter i]: r(i) -> r(j) -> mark(i + j) - call(+, plus|, ) -> + call(i + j, plus|, ) -> L1: NEXT:[] error: diff --git a/compiler/testData/cfg/functions/DefaultValuesForArguments.values b/compiler/testData/cfg/functions/DefaultValuesForArguments.values index cab5857d9b2..99175d8cd75 100644 --- a/compiler/testData/cfg/functions/DefaultValuesForArguments.values +++ b/compiler/testData/cfg/functions/DefaultValuesForArguments.values @@ -1,11 +1,11 @@ == foo == fun foo(i: Int = 1, j: Int) = i + j --------------------- - : Int NEW: magic(i: Int = 1) -> - : Int NEW: magic(j: Int) -> -1 : Int NEW: r(1) -> + : Int NEW: magic(i: Int = 1) -> + : Int NEW: magic(j: Int) -> +1 : Int NEW: r(1) -> i: Int = 1 : Int NEW: merge(i: Int = 1|, ) -> -i : Int NEW: r(i) -> -j : Int NEW: r(j) -> -i + j : Int NEW: call(+, plus|, ) -> -===================== +i : Int NEW: r(i) -> +j : Int NEW: r(j) -> +i + j : Int NEW: call(i + j, plus|, ) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/tailCalls/finally.instructions b/compiler/testData/cfg/tailCalls/finally.instructions index 52b8cc77680..71fae693ed3 100644 --- a/compiler/testData/cfg/tailCalls/finally.instructions +++ b/compiler/testData/cfg/tailCalls/finally.instructions @@ -19,13 +19,13 @@ L2 [onExceptionToFinallyBlock]: L4 [start finally]: 3 mark({ test() }) PREV:[jmp?(L2 [onExceptionToFinallyBlock])] mark(test()) - call(test, test) -> + call(test(), test) -> L5 [finish finally]: 2 jmp(error) NEXT:[] L3 [skipFinallyToErrorBlock]: 3 mark({ test() }) PREV:[jmp(L3 [skipFinallyToErrorBlock])] mark(test()) - call(test, test) -> + call(test(), test) -> L1: 1 NEXT:[] error: diff --git a/compiler/testData/cfg/tailCalls/finally.values b/compiler/testData/cfg/tailCalls/finally.values index 91e330a9346..07aceec2f25 100644 --- a/compiler/testData/cfg/tailCalls/finally.values +++ b/compiler/testData/cfg/tailCalls/finally.values @@ -7,6 +7,6 @@ tailRecursive fun test() : Int { } } --------------------- -test() : * NEW: call(test, test) -> +test() : * NEW: call(test(), test) -> { test() } : * COPY -===================== +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/tailCalls/finallyWithReturn.instructions b/compiler/testData/cfg/tailCalls/finallyWithReturn.instructions index abb0c61391d..d5684f7a56c 100644 --- a/compiler/testData/cfg/tailCalls/finallyWithReturn.instructions +++ b/compiler/testData/cfg/tailCalls/finallyWithReturn.instructions @@ -19,14 +19,14 @@ L2 [onExceptionToFinallyBlock]: L4 [start finally]: 3 mark({ return test() }) PREV:[jmp?(L2 [onExceptionToFinallyBlock])] mark(test()) - call(test, test) -> + call(test(), test) -> ret(*|) L1 NEXT:[] L5 [finish finally]: - 2 jmp(error) NEXT:[] PREV:[] L3 [skipFinallyToErrorBlock]: 3 mark({ return test() }) PREV:[jmp(L3 [skipFinallyToErrorBlock])] mark(test()) - call(test, test) -> + call(test(), test) -> ret(*|) L1 L1: 1 NEXT:[] PREV:[ret(*|) L1, ret(*|) L1] diff --git a/compiler/testData/cfg/tailCalls/finallyWithReturn.values b/compiler/testData/cfg/tailCalls/finallyWithReturn.values index faf82f7f340..8b8a35f46d7 100644 --- a/compiler/testData/cfg/tailCalls/finallyWithReturn.values +++ b/compiler/testData/cfg/tailCalls/finallyWithReturn.values @@ -7,5 +7,5 @@ tailRecursive fun test() : Int { } } --------------------- -test() : Int NEW: call(test, test) -> -===================== +test() : Int NEW: call(test(), test) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/tailCalls/sum.instructions b/compiler/testData/cfg/tailCalls/sum.instructions index ce457b14d51..51d121327de 100644 --- a/compiler/testData/cfg/tailCalls/sum.instructions +++ b/compiler/testData/cfg/tailCalls/sum.instructions @@ -18,9 +18,9 @@ L0: mark(0.toLong()) r(0) -> mark(toLong()) - call(toLong, toLong|) -> + call(toLong(), toLong|) -> mark(x == 0.toLong()) - call(==, equals|, ) -> + call(x == 0.toLong(), equals|, ) -> jf(L2|) NEXT:[read (Unit), r(sum) -> ] r(sum) -> ret(*|) L1 NEXT:[] @@ -31,13 +31,13 @@ L3: r(x) -> r(1) -> mark(x - 1) - call(-, minus|, ) -> + call(x - 1, minus|, ) -> r(sum) -> r(x) -> mark(sum + x) - call(+, plus|, ) -> + call(sum + x, plus|, ) -> mark(sum(x - 1, sum + x)) - call(sum, sum|, ) -> + call(sum(x - 1, sum + x), sum|, ) -> ret(*|) L1 L1: 1 NEXT:[] PREV:[ret(*|) L1, ret(*|) L1] diff --git a/compiler/testData/cfg/tailCalls/sum.values b/compiler/testData/cfg/tailCalls/sum.values index 3fd87f430aa..9c8e165b527 100644 --- a/compiler/testData/cfg/tailCalls/sum.values +++ b/compiler/testData/cfg/tailCalls/sum.values @@ -4,19 +4,19 @@ tailRecursive fun sum(x: Long, sum: Long): Long { return sum(x - 1, sum + x) } --------------------- - : Long NEW: magic(x: Long) -> - : Long NEW: magic(sum: Long) -> -x : OR{{<: Any}, {<: Any}} NEW: r(x) -> -0 : {<: Number} NEW: r(0) -> -toLong() : {<: Any?} NEW: call(toLong, toLong|) -> -0.toLong() : {<: Any?} COPY -x == 0.toLong() : Boolean NEW: call(==, equals|, ) -> -sum : Long NEW: r(sum) -> -x : Long NEW: r(x) -> -1 : Int NEW: r(1) -> -x - 1 : Long NEW: call(-, minus|, ) -> -sum : Long NEW: r(sum) -> -x : Long NEW: r(x) -> -sum + x : Long NEW: call(+, plus|, ) -> -sum(x - 1, sum + x) : Long NEW: call(sum, sum|, ) -> -===================== + : Long NEW: magic(x: Long) -> + : Long NEW: magic(sum: Long) -> +x : OR{{<: Any}, {<: Any}} NEW: r(x) -> +0 : {<: Number} NEW: r(0) -> +toLong() : {<: Any?} NEW: call(toLong(), toLong|) -> +0.toLong() : {<: Any?} COPY +x == 0.toLong() : Boolean NEW: call(x == 0.toLong(), equals|, ) -> +sum : Long NEW: r(sum) -> +x : Long NEW: r(x) -> +1 : Int NEW: r(1) -> +x - 1 : Long NEW: call(x - 1, minus|, ) -> +sum : Long NEW: r(sum) -> +x : Long NEW: r(x) -> +sum + x : Long NEW: call(sum + x, plus|, ) -> +sum(x - 1, sum + x) : Long NEW: call(sum(x - 1, sum + x), sum|, ) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/tailCalls/try.instructions b/compiler/testData/cfg/tailCalls/try.instructions index 5a2dff3a845..8f0be6471dd 100644 --- a/compiler/testData/cfg/tailCalls/try.instructions +++ b/compiler/testData/cfg/tailCalls/try.instructions @@ -14,7 +14,7 @@ L0: jmp?(L2 [onException]) NEXT:[v(e: Throwable), mark({ return foo() })] 3 mark({ return foo() }) mark(foo()) - call(foo, foo) -> + call(foo(), foo) -> ret(*|) L1 NEXT:[] - 2 jmp(L3 [afterCatches]) NEXT:[] PREV:[] L2 [onException]: diff --git a/compiler/testData/cfg/tailCalls/try.values b/compiler/testData/cfg/tailCalls/try.values index 0de53c91e89..7d0bbc7b982 100644 --- a/compiler/testData/cfg/tailCalls/try.values +++ b/compiler/testData/cfg/tailCalls/try.values @@ -8,5 +8,5 @@ tailRecursive fun foo() { } --------------------- : {<: Throwable} NEW: magic(e: Throwable) -> -foo() : Unit NEW: call(foo, foo) -> -===================== +foo() : Unit NEW: call(foo(), foo) -> +===================== \ No newline at end of file diff --git a/compiler/testData/cfg/tailCalls/tryCatchFinally.instructions b/compiler/testData/cfg/tailCalls/tryCatchFinally.instructions index 688a0d1dcaf..ff5542db603 100644 --- a/compiler/testData/cfg/tailCalls/tryCatchFinally.instructions +++ b/compiler/testData/cfg/tailCalls/tryCatchFinally.instructions @@ -17,7 +17,7 @@ L0: jmp?(L3 [onExceptionToFinallyBlock]) NEXT:[mark({ test() }), mark({ test() })] 3 mark({ test() }) mark(test()) - call(test, test) -> + call(test(), test) -> 2 jmp(L4 [afterCatches]) NEXT:[jmp(L5 [skipFinallyToErrorBlock])] L2 [onException]: 3 v(any : Exception) PREV:[jmp?(L2 [onException])] @@ -25,7 +25,7 @@ L2 [onException]: w(any|) 4 mark({ test() }) mark(test()) - call(test, test) -> + call(test(), test) -> 3 jmp(L4 [afterCatches]) L4 [afterCatches]: 2 jmp(L5 [skipFinallyToErrorBlock]) NEXT:[mark({ test() })] PREV:[jmp(L4 [afterCatches]), jmp(L4 [afterCatches])] @@ -33,13 +33,13 @@ L3 [onExceptionToFinallyBlock]: L6 [start finally]: 3 mark({ test() }) PREV:[jmp?(L3 [onExceptionToFinallyBlock])] mark(test()) - call(test, test) -> + call(test(), test) -> L7 [finish finally]: 2 jmp(error) NEXT:[] L5 [skipFinallyToErrorBlock]: 3 mark({ test() }) PREV:[jmp(L5 [skipFinallyToErrorBlock])] mark(test()) - call(test, test) -> + call(test(), test) -> 2 merge(try { test() } catch (any : Exception) { test() } finally { test() }|, ) -> L1: 1 NEXT:[] diff --git a/compiler/testData/cfg/tailCalls/tryCatchFinally.values b/compiler/testData/cfg/tailCalls/tryCatchFinally.values index f33891190bd..f9cb6ab184a 100644 --- a/compiler/testData/cfg/tailCalls/tryCatchFinally.values +++ b/compiler/testData/cfg/tailCalls/tryCatchFinally.values @@ -9,13 +9,13 @@ fun test() : Unit { } } --------------------- - : {<: Exception} NEW: magic(any : Exception) -> -test() : * NEW: call(test, test) -> -{ test() } : * COPY -test() : * NEW: call(test, test) -> -{ test() } : * COPY -test() : * NEW: call(test, test) -> -{ test() } : * COPY + : {<: Exception} NEW: magic(any : Exception) -> +test() : * NEW: call(test(), test) -> +{ test() } : * COPY +test() : * NEW: call(test(), test) -> +{ test() } : * COPY +test() : * NEW: call(test(), test) -> +{ test() } : * COPY try { test() } catch (any : Exception) { test() } finally { test() } : * NEW: merge(try { test() } catch (any : Exception) { test() } finally { test() }|, ) -> -{ try { test() } catch (any : Exception) { test() } finally { test() } } : * COPY -===================== +{ try { test() } catch (any : Exception) { test() } finally { test() } } : * COPY +===================== \ No newline at end of file