[FIR] Optimization & checking fix: remove usage of dispatchReceiverValue

This commit is contained in:
simon.ogorodnik
2019-12-25 17:23:44 +03:00
committed by Mikhail Glukhikh
parent 686965c0d3
commit 5e426fdc71
114 changed files with 268 additions and 302 deletions
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
interface Expr {
public fun ttFun() : Int = 12
}
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
class Test {
class Nested {
val value = "OK"
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
class A {
fun foo() = "OK"
}
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
open class A
class B : A() {
@@ -4,6 +4,6 @@ class A() {
val x = 1
companion object {
val y = <!UNRESOLVED_REFERENCE!>x<!>
val y = x
}
}
@@ -4,6 +4,6 @@ class Test {
fun test(): Int = 12
companion object {
val a = <!UNRESOLVED_REFERENCE!>test<!>() // Check if resolver will be able to infer type of a variable
val a = test() // Check if resolver will be able to infer type of a variable
}
}
@@ -8,7 +8,7 @@ class My {
companion object {
val y = <!UNRESOLVED_REFERENCE!>foo<!>()
val y = foo()
val u = bar()
@@ -7,7 +7,7 @@ public class Z {
class Local {
public inline fun a() {
<!UNRESOLVED_REFERENCE!>privateProperty<!>
privateProperty
}
}
@@ -1,6 +1,6 @@
enum class E {
E1 {
override fun foo() = <!UNRESOLVED_REFERENCE!>outerFun<!>() + super.<!UNRESOLVED_REFERENCE!>outerFun<!>()
override fun foo() = outerFun() <!AMBIGUITY!>+<!> super.<!UNRESOLVED_REFERENCE!>outerFun<!>()
},
E2 {
override fun foo() = E1.foo()
@@ -12,8 +12,8 @@ class Test {
fun more(): InnerClass {
val b = InnerClass()
val testVal = <!UNRESOLVED_REFERENCE!>inClass<!>
<!UNRESOLVED_REFERENCE!>foo<!>()
val testVal = inClass
foo()
return b
}
@@ -12,8 +12,8 @@ class Test {
fun more(): InnerClass {
val b = InnerClass()
val testVal = <!UNRESOLVED_REFERENCE!>inClass<!>
<!UNRESOLVED_REFERENCE!>foo<!>()
val testVal = inClass
foo()
return b
}
@@ -3,10 +3,10 @@ class Outer {
if (outerState > 0) return outerState
class Local {
val localState = <!UNRESOLVED_REFERENCE!>outerState<!>
val localState = outerState
inner class LocalInner {
val o = <!UNRESOLVED_REFERENCE!>outerState<!>
val o = outerState
val l = localState
}
}
@@ -2,7 +2,7 @@ class Outer {
class Nested {
fun foo() {
class Local {
val state = <!UNRESOLVED_REFERENCE!>outerState<!>
val state = outerState
}
}
}
@@ -5,8 +5,8 @@ class Outer {
val property = ""
class Nested {
fun f() = <!UNRESOLVED_REFERENCE!>function<!>()
fun g() = <!UNRESOLVED_REFERENCE!>property<!>
fun f() = function()
fun g() = property
fun h() = this@Outer.function()
fun i() = this@Outer.property
}
@@ -4,6 +4,6 @@ open class Base {
class Derived : Base() {
class Nested {
fun bar() = <!UNRESOLVED_REFERENCE!>foo<!>()
fun bar() = foo()
}
}
@@ -2,7 +2,7 @@
// KT-5362 Compiler crashes on access to extension method from nested class
class Outer {
class Nested{
fun foo(s: String) = s.<!UNRESOLVED_REFERENCE!>extension<!>()
fun foo(s: String) = s.extension()
}
private fun String.extension(): String = this
@@ -29,8 +29,8 @@ open class A<T> : J() {
fun test() {
foo()
bar()
val a: Int = <!UNRESOLVED_REFERENCE!>baz<!>()
val b: T = <!UNRESOLVED_REFERENCE!>baz<!>()
val a: Int = baz()
val b: T = baz()
}
}
@@ -29,8 +29,8 @@ open class A<T> : J() {
fun test() {
foo()
bar()
val a: Int = <!UNRESOLVED_REFERENCE!>baz<!>()
val b: T = <!UNRESOLVED_REFERENCE!>baz<!>()
val a: Int = baz()
val b: T = baz()
}
}
@@ -14,20 +14,20 @@ class A {
init {
foo()
bar()
<!UNRESOLVED_REFERENCE!>baz<!>()
baz()
}
fun test1() {
foo()
bar()
<!UNRESOLVED_REFERENCE!>baz<!>()
baz()
}
object O {
fun test() {
foo()
bar()
<!UNRESOLVED_REFERENCE!>baz<!>()
baz()
}
}
@@ -14,20 +14,20 @@ class A {
init {
foo()
bar()
<!UNRESOLVED_REFERENCE!>baz<!>()
baz()
}
fun test1() {
foo()
bar()
<!UNRESOLVED_REFERENCE!>baz<!>()
baz()
}
object O {
fun test() {
foo()
bar()
<!UNRESOLVED_REFERENCE!>baz<!>()
baz()
}
}
@@ -5,7 +5,7 @@ open class VeryBase {
open class Base {
protected fun foo() {
bar() // Ok
<!UNRESOLVED_REFERENCE!>baz<!>() // Ok
<!INAPPLICABLE_CANDIDATE!>baz<!>() // Ok
}
inner class Inner {
@@ -13,7 +13,7 @@ open class Base {
foo() // Ok
bar() // Ok
gav() // Ok
<!UNRESOLVED_REFERENCE!>baz<!>() // Ok
<!INAPPLICABLE_CANDIDATE!>baz<!>() // Ok
}
}
@@ -22,7 +22,7 @@ open class Base {
foo() // Ok
bar() // Ok
gav() // Ok
<!UNRESOLVED_REFERENCE!>baz<!>() // Ok
<!INAPPLICABLE_CANDIDATE!>baz<!>() // Ok
}
}
@@ -48,7 +48,7 @@ class Derived : Base() {
foo() // Ok
<!INAPPLICABLE_CANDIDATE!>gav<!>() // Ok
<!INAPPLICABLE_CANDIDATE!>bar<!>()
<!UNRESOLVED_REFERENCE!>baz<!>()
<!INAPPLICABLE_CANDIDATE!>baz<!>()
prop = 0
}
@@ -57,7 +57,7 @@ class Derived : Base() {
foo() // Ok
<!INAPPLICABLE_CANDIDATE!>gav<!>() // Ok
<!INAPPLICABLE_CANDIDATE!>bar<!>()
<!UNRESOLVED_REFERENCE!>baz<!>()
<!INAPPLICABLE_CANDIDATE!>baz<!>()
prop = 0
}
}
@@ -66,7 +66,7 @@ class Derived : Base() {
fun test2() {
<!INAPPLICABLE_CANDIDATE!>gav<!>() // Ok
<!INAPPLICABLE_CANDIDATE!>bar<!>()
<!UNRESOLVED_REFERENCE!>baz<!>()
<!INAPPLICABLE_CANDIDATE!>baz<!>()
prop = 0
}
}
@@ -20,8 +20,8 @@ typealias CStr = JHost.Consumer<String>
typealias CStrList = JHost.Consumer<List<String>>
typealias C2<T> = JHost.Consumer2<T, T>
val test1 = <!UNRESOLVED_REFERENCE!>R<!> { }
val test2 = <!UNRESOLVED_REFERENCE!>C<!><String> { s -> <!AMBIGUITY!>println<!>(s.<!UNRESOLVED_REFERENCE!>length<!>) }
val test3 = <!UNRESOLVED_REFERENCE!>CStr<!> { s -> <!AMBIGUITY!>println<!>(s.<!UNRESOLVED_REFERENCE!>length<!>) }
val test4 = <!UNRESOLVED_REFERENCE!>CStrList<!> { ss -> <!AMBIGUITY, UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE!>for (s in ss) { <!AMBIGUITY!>println<!>(s.<!UNRESOLVED_REFERENCE!>length<!>) }<!> }
val test5 = <!UNRESOLVED_REFERENCE!>C2<!><Int> { a, b -> val x: Int = a <!AMBIGUITY!>+<!> b; println(x)}
val test1 = R { }
val test2 = C<String> { s -> println(s.length) }
val test3 = CStr { s -> <!AMBIGUITY!>println<!>(s.<!UNRESOLVED_REFERENCE!>length<!>) }
val test4 = CStrList { ss -> <!UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE!>for (s in ss) { <!AMBIGUITY!>println<!>(s.<!UNRESOLVED_REFERENCE!>length<!>) }<!> }
val test5 = C2<Int> { a, b -> val x: Int = a <!AMBIGUITY!>+<!> b; println(x)}
+1 -1
View File
@@ -484,7 +484,7 @@ FILE fqName:<root> fileName:/enum.kt
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:z type:kotlin.Int visibility:private [final]' type=kotlin.Unit origin=null
receiver: GET_VAR '<this>: <root>.TestEnum4.TEST2 declared in <root>.TestEnum4.TEST2' type=<root>.TestEnum4.TEST2 origin=null
value: CALL 'public final fun <get-x> (): kotlin.Int declared in <root>.TestEnum4' type=kotlin.Int origin=null
$this: GET_VAR '<this>: <root>.TestEnum4 declared in <root>.TestEnum4' type=<root>.TestEnum4 origin=null
$this: GET_VAR '<this>: <root>.TestEnum4.TEST2 declared in <root>.TestEnum4.TEST2' type=<root>.TestEnum4.TEST2 origin=null
FUN name:foo visibility:public modality:FINAL <> ($this:<root>.TestEnum4.TEST2) returnType:kotlin.Unit
$this: VALUE_PARAMETER name:<this> type:<root>.TestEnum4.TEST2
BLOCK_BODY
-3
View File
@@ -140,7 +140,6 @@ FILE fqName:<root> fileName:/initVar.kt
VALUE_PARAMETER name:value index:0 type:kotlin.Int
BLOCK_BODY
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
receiver: GET_VAR '<this>: <root>.TestInitVarWithCustomSetter declared in <root>.TestInitVarWithCustomSetter' type=<root>.TestInitVarWithCustomSetter origin=null
value: GET_VAR 'value: kotlin.Int declared in <root>.TestInitVarWithCustomSetter.<set-x>' type=kotlin.Int origin=null
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
overridden:
@@ -172,7 +171,6 @@ FILE fqName:<root> fileName:/initVar.kt
VALUE_PARAMETER name:value index:0 type:kotlin.Int
BLOCK_BODY
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
receiver: GET_VAR '<this>: <root>.TestInitVarWithCustomSetterWithExplicitCtor declared in <root>.TestInitVarWithCustomSetterWithExplicitCtor' type=<root>.TestInitVarWithCustomSetterWithExplicitCtor origin=null
value: GET_VAR 'value: kotlin.Int declared in <root>.TestInitVarWithCustomSetterWithExplicitCtor.<set-x>' type=kotlin.Int origin=null
ANONYMOUS_INITIALIZER isStatic=false
BLOCK_BODY
@@ -213,7 +211,6 @@ FILE fqName:<root> fileName:/initVar.kt
VALUE_PARAMETER name:value index:0 type:kotlin.Int
BLOCK_BODY
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
receiver: GET_VAR '<this>: <root>.TestInitVarWithCustomSetterInCtor declared in <root>.TestInitVarWithCustomSetterInCtor' type=<root>.TestInitVarWithCustomSetterInCtor origin=null
value: GET_VAR 'value: kotlin.Int declared in <root>.TestInitVarWithCustomSetterInCtor.<set-x>' type=kotlin.Int origin=null
CONSTRUCTOR visibility:public <> () returnType:<root>.TestInitVarWithCustomSetterInCtor
BLOCK_BODY
@@ -37,7 +37,7 @@ FILE fqName:<root> fileName:/outerClassAccess.kt
$receiver: VALUE_PARAMETER name:<this> type:<root>.Outer
BLOCK_BODY
CALL 'public final fun foo (): kotlin.Unit declared in <root>.Outer' type=kotlin.Unit origin=null
$this: GET_VAR '<this>: <root>.Outer declared in <root>.Outer' type=<root>.Outer origin=null
$this: GET_VAR '<this>: <root>.Outer declared in <root>.Outer.Inner.Inner2.test3' type=<root>.Outer origin=null
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
overridden:
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
@@ -59,7 +59,6 @@ FILE fqName:<root> fileName:/classLevelProperties.kt
VALUE_PARAMETER name:value index:0 type:kotlin.Int
BLOCK_BODY
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test4 type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
receiver: GET_VAR '<this>: <root>.C declared in <root>.C' type=<root>.C origin=null
value: GET_VAR 'value: kotlin.Int declared in <root>.C.<set-test4>' type=kotlin.Int origin=null
PROPERTY name:test5 visibility:public modality:FINAL [var]
FIELD PROPERTY_BACKING_FIELD name:test5 type:kotlin.Int visibility:private
@@ -1,28 +0,0 @@
FILE fqName:<root> fileName:/suppressedNonPublicCall.kt
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.C
CONSTRUCTOR visibility:public <> () returnType:<root>.C [primary]
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]'
FUN name:bar visibility:internal modality:FINAL <> ($this:<root>.C) returnType:kotlin.Unit
$this: VALUE_PARAMETER name:<this> type:<root>.C
BLOCK_BODY
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
overridden:
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
overridden:
public open fun hashCode (): kotlin.Int declared in kotlin.Any
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
overridden:
public open fun toString (): kotlin.String declared in kotlin.Any
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
FUN name:foo visibility:public modality:FINAL <> ($receiver:<root>.C) returnType:kotlin.Unit [inline]
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
BLOCK_BODY
CALL 'internal final fun bar (): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=null
$this: GET_VAR '<this>: <root>.C declared in <root>.C' type=<root>.C origin=null
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
class C {
internal fun bar() {}
}
@@ -242,6 +242,6 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
VALUE_PARAMETER name:v index:0 type:<root>.B
BLOCK_BODY
CALL 'public final fun plusAssign (b: <root>.B): kotlin.Unit [operator] declared in <root>.Host' type=kotlin.Unit origin=null
$this: GET_VAR '<this>: <root>.Host declared in <root>.Host' type=<root>.Host origin=null
$this: GET_VAR '<this>: <root>.Host declared in <root>.test3' type=<root>.Host origin=null
b: CONSTRUCTOR_CALL 'public constructor <init> (s: kotlin.Int) [primary] declared in <root>.B' type=<root>.B origin=null
s: CONST Int type=kotlin.Int value=1000
@@ -151,7 +151,7 @@ FILE fqName:<root> fileName:/floatingPointCompareTo.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun test1fr (x: kotlin.Float): kotlin.Int declared in <root>'
CALL 'public open fun compareTo (other: kotlin.Float): kotlin.Int [operator] declared in kotlin.Float' type=kotlin.Int origin=null
$this: GET_VAR '<this>: kotlin.Float declared in kotlin.Float' type=kotlin.Float origin=null
$this: GET_VAR '<this>: kotlin.Float declared in <root>.test1fr' type=kotlin.Float origin=null
other: GET_VAR 'x: kotlin.Float declared in <root>.test1fr' type=kotlin.Float origin=null
FUN name:test2fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Any) returnType:kotlin.Boolean
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Float
@@ -164,7 +164,7 @@ FILE fqName:<root> fileName:/floatingPointCompareTo.kt
GET_VAR 'x: kotlin.Any declared in <root>.test2fr' type=kotlin.Any origin=null
then: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
arg0: CALL 'public open fun compareTo (other: kotlin.Float): kotlin.Int [operator] declared in kotlin.Float' type=kotlin.Int origin=null
$this: GET_VAR '<this>: kotlin.Float declared in kotlin.Float' type=kotlin.Float origin=null
$this: GET_VAR '<this>: kotlin.Float declared in <root>.test2fr' type=kotlin.Float origin=null
other: GET_VAR 'x: kotlin.Any declared in <root>.test2fr' type=kotlin.Float origin=null
arg1: CONST Int type=kotlin.Int value=0
BRANCH
@@ -181,7 +181,7 @@ FILE fqName:<root> fileName:/floatingPointCompareTo.kt
GET_VAR 'x: kotlin.Any declared in <root>.test3fr' type=kotlin.Any origin=null
then: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
arg0: CALL 'public final fun compareTo (other: kotlin.Double): kotlin.Int [operator] declared in kotlin.Float' type=kotlin.Int origin=null
$this: GET_VAR '<this>: kotlin.Float declared in kotlin.Float' type=kotlin.Float origin=null
$this: GET_VAR '<this>: kotlin.Float declared in <root>.test3fr' type=kotlin.Float origin=null
other: GET_VAR 'x: kotlin.Any declared in <root>.test3fr' type=kotlin.Double origin=null
arg1: CONST Int type=kotlin.Int value=0
BRANCH
@@ -187,7 +187,7 @@ FILE fqName:<root> fileName:/floatingPointEquals.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun test1fr (x: kotlin.Float): kotlin.Boolean declared in <root>'
CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any' type=kotlin.Boolean origin=null
$this: GET_VAR '<this>: kotlin.Any declared in kotlin.Any' type=kotlin.Any origin=null
$this: GET_VAR '<this>: kotlin.Float declared in <root>.test1fr' type=kotlin.Float origin=null
other: GET_VAR 'x: kotlin.Float declared in <root>.test1fr' type=kotlin.Float origin=null
FUN name:test2fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Float?) returnType:kotlin.Boolean
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Float
@@ -195,7 +195,7 @@ FILE fqName:<root> fileName:/floatingPointEquals.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun test2fr (x: kotlin.Float?): kotlin.Boolean declared in <root>'
CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any' type=kotlin.Boolean origin=null
$this: GET_VAR '<this>: kotlin.Any declared in kotlin.Any' type=kotlin.Any origin=null
$this: GET_VAR '<this>: kotlin.Float declared in <root>.test2fr' type=kotlin.Float origin=null
other: GET_VAR 'x: kotlin.Float? declared in <root>.test2fr' type=kotlin.Float? origin=null
FUN name:test3fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Any) returnType:kotlin.Boolean
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Float
@@ -203,7 +203,7 @@ FILE fqName:<root> fileName:/floatingPointEquals.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun test3fr (x: kotlin.Any): kotlin.Boolean declared in <root>'
CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any' type=kotlin.Boolean origin=null
$this: GET_VAR '<this>: kotlin.Any declared in kotlin.Any' type=kotlin.Any origin=null
$this: GET_VAR '<this>: kotlin.Float declared in <root>.test3fr' type=kotlin.Float origin=null
other: GET_VAR 'x: kotlin.Any declared in <root>.test3fr' type=kotlin.Any origin=null
FUN name:test4fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Number) returnType:kotlin.Boolean
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Float
@@ -211,7 +211,7 @@ FILE fqName:<root> fileName:/floatingPointEquals.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun test4fr (x: kotlin.Number): kotlin.Boolean declared in <root>'
CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any' type=kotlin.Boolean origin=null
$this: GET_VAR '<this>: kotlin.Any declared in kotlin.Any' type=kotlin.Any origin=null
$this: GET_VAR '<this>: kotlin.Float declared in <root>.test4fr' type=kotlin.Float origin=null
other: GET_VAR 'x: kotlin.Number declared in <root>.test4fr' type=kotlin.Number origin=null
FUN name:test5fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Any) returnType:kotlin.Boolean
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Float
@@ -223,7 +223,7 @@ FILE fqName:<root> fileName:/floatingPointEquals.kt
if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=kotlin.Float
GET_VAR 'x: kotlin.Any declared in <root>.test5fr' type=kotlin.Any origin=null
then: CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any' type=kotlin.Boolean origin=null
$this: GET_VAR '<this>: kotlin.Any declared in kotlin.Any' type=kotlin.Any origin=null
$this: GET_VAR '<this>: kotlin.Float declared in <root>.test5fr' type=kotlin.Float origin=null
other: GET_VAR 'x: kotlin.Any declared in <root>.test5fr' type=kotlin.Float origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
@@ -238,7 +238,7 @@ FILE fqName:<root> fileName:/floatingPointEquals.kt
if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=kotlin.Double
GET_VAR 'x: kotlin.Any declared in <root>.test6fr' type=kotlin.Any origin=null
then: CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any' type=kotlin.Boolean origin=null
$this: GET_VAR '<this>: kotlin.Any declared in kotlin.Any' type=kotlin.Any origin=null
$this: GET_VAR '<this>: kotlin.Float declared in <root>.test6fr' type=kotlin.Float origin=null
other: GET_VAR 'x: kotlin.Any declared in <root>.test6fr' type=kotlin.Double origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
@@ -73,7 +73,7 @@ FILE fqName:<root> fileName:/forWithImplicitReceivers.kt
RETURN type=kotlin.Nothing from='public open fun hasNext (): kotlin.Boolean [operator] declared in <root>.IReceiver'
CALL 'public final fun greater (arg0: kotlin.Int, arg1: kotlin.Int): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=GT
arg0: CALL 'public final fun <get-value> (): kotlin.Int declared in <root>.IntCell' type=kotlin.Int origin=null
$this: GET_VAR '<this>: <root>.IntCell declared in <root>.IntCell' type=<root>.IntCell origin=null
$this: GET_VAR '<this>: <root>.IntCell declared in <root>.IReceiver.hasNext' type=<root>.IntCell origin=null
arg1: CONST Int type=kotlin.Int value=0
FUN name:next visibility:public modality:OPEN <> ($this:<root>.IReceiver, $receiver:<root>.IntCell) returnType:kotlin.Int [operator]
$this: VALUE_PARAMETER name:<this> type:<root>.IReceiver
@@ -83,9 +83,9 @@ FILE fqName:<root> fileName:/forWithImplicitReceivers.kt
BLOCK type=kotlin.Int origin=null
VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:kotlin.Int [val]
CALL 'public final fun <get-value> (): kotlin.Int declared in <root>.IntCell' type=kotlin.Int origin=null
$this: GET_VAR '<this>: <root>.IntCell declared in <root>.IntCell' type=<root>.IntCell origin=null
$this: GET_VAR '<this>: <root>.IntCell declared in <root>.IReceiver.next' type=<root>.IntCell origin=null
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:value type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
receiver: GET_VAR '<this>: <root>.IntCell declared in <root>.IntCell' type=<root>.IntCell origin=null
receiver: GET_VAR '<this>: <root>.IntCell declared in <root>.IReceiver.next' type=<root>.IntCell origin=null
value: CALL 'public final fun dec (): kotlin.Int [operator] declared in kotlin.Int' type=kotlin.Int origin=null
$this: GET_VAR 'val tmp_0: kotlin.Int [val] declared in <root>.IReceiver.next' type=kotlin.Int origin=null
GET_VAR 'val tmp_0: kotlin.Int [val] declared in <root>.IReceiver.next' type=kotlin.Int origin=null
@@ -109,13 +109,13 @@ FILE fqName:<root> fileName:/forWithImplicitReceivers.kt
GET_OBJECT 'CLASS OBJECT name:FiveTimes modality:FINAL visibility:public superTypes:[kotlin.Any]' type=<root>.FiveTimes
VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:<root>.IntCell [val]
CALL 'public open fun iterator (): <root>.IntCell [operator] declared in <root>.IReceiver' type=<root>.IntCell origin=null
$this: GET_VAR '<this>: <root>.IReceiver declared in <root>.IReceiver' type=<root>.IReceiver origin=null
$this: GET_VAR '<this>: <root>.IReceiver declared in <root>.test' type=<root>.IReceiver origin=null
WHILE label=null origin=FOR_LOOP_INNER_WHILE
condition: CALL 'public open fun hasNext (): kotlin.Boolean [operator] declared in <root>.IReceiver' type=kotlin.Boolean origin=null
$this: GET_VAR '<this>: <root>.IReceiver declared in <root>.IReceiver' type=<root>.IReceiver origin=null
$this: GET_VAR '<this>: <root>.IReceiver declared in <root>.test' type=<root>.IReceiver origin=null
body: BLOCK type=kotlin.Unit origin=null
VAR name:i type:kotlin.Int [val]
CALL 'public open fun next (): kotlin.Int [operator] declared in <root>.IReceiver' type=kotlin.Int origin=null
$this: GET_VAR '<this>: <root>.IReceiver declared in <root>.IReceiver' type=<root>.IReceiver origin=null
$this: GET_VAR '<this>: <root>.IReceiver declared in <root>.test' type=<root>.IReceiver origin=null
CALL 'public final fun println (message: kotlin.Int): kotlin.Unit [inline] declared in kotlin.io' type=kotlin.Unit origin=null
message: GET_VAR 'val i: kotlin.Int [val] declared in <root>.test' type=kotlin.Int origin=null
@@ -55,7 +55,7 @@ FILE fqName:<root> fileName:/implicitCastToTypeParameter.kt
TYPE_OP type=T of <root>.Bar origin=CAST typeOperand=T of <root>.Bar
GET_VAR 'arg: kotlin.Any declared in <root>.Bar.test' type=kotlin.Any origin=null
CALL 'public final fun useT (t: T of <root>.Bar): kotlin.Unit declared in <root>.Bar' type=kotlin.Unit origin=null
$this: GET_VAR '<this>: <root>.Bar declared in <root>.Bar' type=<root>.Bar<*> origin=null
$this: GET_VAR '<this>: <root>.Bar declared in <root>.Bar' type=<root>.Bar<T of <root>.Bar> origin=null
t: GET_VAR 'arg: kotlin.Any declared in <root>.Bar.test' type=T of <root>.Bar origin=null
FUN name:useT visibility:public modality:FINAL <> ($this:<root>.Bar, t:T of <root>.Bar) returnType:kotlin.Unit
$this: VALUE_PARAMETER name:<this> type:<root>.Bar
@@ -8,14 +8,14 @@ FILE fqName:<root> fileName:/Derived.kt
ANONYMOUS_INITIALIZER isStatic=false
BLOCK_BODY
SET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:value type:kotlin.Int visibility:public' type=kotlin.Unit origin=null
receiver: GET_VAR '<this>: <root>.Base declared in <root>.Base' type=<root>.Base origin=null
receiver: GET_VAR '<this>: <root>.Derived declared in <root>.Derived' type=<root>.Derived origin=null
value: CONST Int type=kotlin.Int value=0
FUN name:getValue visibility:public modality:FINAL <> ($this:<root>.Derived) returnType:kotlin.Int
$this: VALUE_PARAMETER name:<this> type:<root>.Derived
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun getValue (): kotlin.Int declared in <root>.Derived'
GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:value type:kotlin.Int visibility:public' type=kotlin.Int origin=GET_PROPERTY
receiver: GET_VAR '<this>: <root>.Base declared in <root>.Base' type=<root>.Base origin=null
receiver: GET_VAR '<this>: <root>.Derived declared in <root>.Derived' type=<root>.Derived origin=null
FUN name:setValue visibility:public modality:FINAL <> ($this:<root>.Derived, value:kotlin.Int) returnType:kotlin.Unit
$this: VALUE_PARAMETER name:<this> type:<root>.Derived
VALUE_PARAMETER name:value index:0 type:kotlin.Int
+3 -3
View File
@@ -77,12 +77,12 @@ FILE fqName:<root> fileName:/kt16904.kt
BLOCK_BODY
CALL 'public final fun plusAssign (x: kotlin.Int): kotlin.Unit [operator] declared in <root>.B' type=kotlin.Unit origin=null
$this: CALL 'public final fun <get-x> (): <root>.B declared in <root>.A' type=<root>.B origin=null
$this: GET_VAR '<this>: <root>.A declared in <root>.A' type=<root>.A origin=null
$this: GET_VAR '<this>: <root>.Test1 declared in <root>.Test1' type=<root>.Test1 origin=null
x: CONST Int type=kotlin.Int value=42
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:y type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
value: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int [operator] declared in kotlin.Int' type=kotlin.Int origin=null
$this: CALL 'public final fun <get-y> (): kotlin.Int declared in <root>.A' type=kotlin.Int origin=null
$this: GET_VAR '<this>: <root>.A declared in <root>.A' type=<root>.A origin=null
$this: GET_VAR '<this>: <root>.Test1 declared in <root>.Test1' type=<root>.Test1 origin=null
other: CONST Int type=kotlin.Int value=42
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Test1 modality:FINAL visibility:public superTypes:[<root>.A]'
@@ -126,7 +126,7 @@ FILE fqName:<root> fileName:/kt16904.kt
ANONYMOUS_INITIALIZER isStatic=false
BLOCK_BODY
SET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:field type:kotlin.Int visibility:public' type=kotlin.Unit origin=null
receiver: GET_VAR '<this>: <root>.J declared in <root>.J' type=<root>.J origin=null
receiver: GET_VAR '<this>: <root>.Test2 declared in <root>.Test2' type=<root>.Test2 origin=null
value: CONST Int type=kotlin.Int value=42
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
overridden:
@@ -85,7 +85,7 @@ FILE fqName:<root> fileName:/multipleThisReferences.kt
EXPRESSION_BODY
CALL 'public final fun plus (other: kotlin.Int): kotlin.Int [operator] declared in kotlin.Int' type=kotlin.Int origin=null
$this: CALL 'public final fun <get-x> (): kotlin.Int declared in <root>.Outer.Inner' type=kotlin.Int origin=null
$this: GET_VAR '<this>: <root>.Outer.Inner declared in <root>.Outer.Inner' type=<root>.Outer.Inner origin=null
$this: GET_VAR '<this>: <uninitialized parent>.<anonymous> declared in <no parent>.<anonymous>' type=<uninitialized parent>.<anonymous> origin=null
other: GET_VAR 'y: kotlin.Int declared in <root>.Host.<init>' type=kotlin.Int origin=null
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-xx> visibility:public modality:FINAL <> ($this:<root>.Host.test.<no name provided>) returnType:kotlin.Int
correspondingProperty: PROPERTY name:xx visibility:public modality:FINAL [val]
+2 -2
View File
@@ -46,7 +46,7 @@ FILE fqName:<root> fileName:/safeCalls.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public open fun extLength (): kotlin.Int declared in <root>.IHost'
CALL 'public open fun <get-length> (): kotlin.Int declared in kotlin.String' type=kotlin.Int origin=null
$this: GET_VAR '<this>: kotlin.String declared in kotlin.String' type=kotlin.String origin=null
$this: GET_VAR '<this>: kotlin.String declared in <root>.IHost.extLength' type=kotlin.String origin=null
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
overridden:
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
@@ -92,7 +92,7 @@ FILE fqName:<root> fileName:/safeCalls.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun test5 (s: kotlin.String?): kotlin.Int? declared in <root>'
CALL 'public open fun extLength (): kotlin.Int declared in <root>.IHost' type=kotlin.Int? origin=null
$this: GET_VAR '<this>: <root>.IHost declared in <root>.IHost' type=<root>.IHost origin=null
$this: GET_VAR '<this>: <root>.IHost declared in <root>.test5' type=<root>.IHost origin=null
FUN name:foo visibility:public modality:FINAL <> ($receiver:kotlin.Int) returnType:kotlin.Int
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Int
BLOCK_BODY
@@ -6,7 +6,7 @@ FILE fqName:<root> fileName:/samConversions.kt
CALL 'public open fun runStatic (r: java.lang.Runnable?): kotlin.Unit [operator] declared in <root>.J' type=kotlin.Unit origin=null
r: GET_VAR 'a: java.lang.Runnable declared in <root>.test0' type=java.lang.Runnable origin=null
CALL 'public open fun runIt (r: java.lang.Runnable?): kotlin.Unit [operator] declared in <root>.J' type=kotlin.Unit origin=null
$this: GET_VAR '<this>: <root>.J declared in <root>.J' type=<root>.J origin=null
$this: GET_VAR '<this>: <root>.J declared in <root>.test0' type=<root>.J origin=null
r: GET_VAR 'a: java.lang.Runnable declared in <root>.test0' type=java.lang.Runnable origin=null
FUN name:test1 visibility:public modality:FINAL <> () returnType:kotlin.Unit
BLOCK_BODY
@@ -19,7 +19,7 @@ FILE fqName:<root> fileName:/samConversions.kt
$receiver: VALUE_PARAMETER name:<this> type:<root>.J
BLOCK_BODY
CALL 'public open fun runIt (r: java.lang.Runnable?): kotlin.Unit [operator] declared in <root>.J' type=kotlin.Unit origin=null
$this: GET_VAR '<this>: <root>.J declared in <root>.J' type=<root>.J origin=null
$this: GET_VAR '<this>: <root>.J declared in <root>.test2' type=<root>.J origin=null
r: FUN_EXPR type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit
BLOCK_BODY
@@ -29,7 +29,7 @@ FILE fqName:<root> fileName:/samConversions.kt
VALUE_PARAMETER name:a index:0 type:kotlin.Function0<kotlin.Unit>
BLOCK_BODY
CALL 'public open fun run2 (r1: java.lang.Runnable?, r2: java.lang.Runnable?): kotlin.Unit [operator] declared in <root>.J' type=kotlin.Unit origin=null
$this: GET_VAR '<this>: <root>.J declared in <root>.J' type=<root>.J origin=null
$this: GET_VAR '<this>: <root>.J declared in <root>.test3' type=<root>.J origin=null
r1: GET_VAR 'a: kotlin.Function0<kotlin.Unit> declared in <root>.test3' type=kotlin.Function0<kotlin.Unit> origin=null
r2: GET_VAR 'a: kotlin.Function0<kotlin.Unit> declared in <root>.test3' type=kotlin.Function0<kotlin.Unit> origin=null
FUN name:test4 visibility:public modality:FINAL <> ($receiver:<root>.J, a:kotlin.Function0<kotlin.Unit>, b:kotlin.Function0<kotlin.Unit>, flag:kotlin.Boolean) returnType:kotlin.Unit
@@ -39,7 +39,7 @@ FILE fqName:<root> fileName:/samConversions.kt
VALUE_PARAMETER name:flag index:2 type:kotlin.Boolean
BLOCK_BODY
CALL 'public open fun runIt (r: java.lang.Runnable?): kotlin.Unit [operator] declared in <root>.J' type=kotlin.Unit origin=null
$this: GET_VAR '<this>: <root>.J declared in <root>.J' type=<root>.J origin=null
$this: GET_VAR '<this>: <root>.J declared in <root>.test4' type=<root>.J origin=null
r: WHEN type=kotlin.Function0<kotlin.Unit> origin=IF
BRANCH
if: GET_VAR 'flag: kotlin.Boolean declared in <root>.test4' type=kotlin.Boolean origin=null
@@ -15,7 +15,7 @@ FILE fqName:<root> fileName:/Derived.kt
GET_VAR 'v: kotlin.Any declared in <root>.Derived.setValue' type=kotlin.Any origin=null
then: BLOCK type=kotlin.Unit origin=null
SET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:value type:kotlin.String? visibility:public' type=kotlin.Unit origin=null
receiver: GET_VAR '<this>: <root>.Base declared in <root>.Base' type=<root>.Base origin=null
receiver: GET_VAR '<this>: <root>.Derived declared in <root>.Derived' type=<root>.Derived origin=null
value: GET_VAR 'v: kotlin.Any declared in <root>.Derived.setValue' type=kotlin.String origin=null
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
overridden:
@@ -79,9 +79,9 @@ FILE fqName:<root> fileName:/thisOfGenericOuterClass.kt
EXPRESSION_BODY
CALL 'public final fun plus (other: kotlin.Int): kotlin.Int [operator] declared in kotlin.Int' type=kotlin.Int origin=null
$this: CALL 'public final fun <get-x> (): kotlin.Int declared in <root>.Outer' type=kotlin.Int origin=null
$this: GET_VAR '<this>: <root>.Outer declared in <root>.Outer' type=<root>.Outer<*> origin=null
$this: GET_VAR '<this>: <root>.Outer<kotlin.Int> declared in <root>.test' type=<root>.Outer<kotlin.Int> origin=null
other: CALL 'public final fun <get-y> (): kotlin.Int declared in <root>.Outer.Inner' type=kotlin.Int origin=null
$this: GET_VAR '<this>: <root>.Outer.Inner declared in <root>.Outer.Inner' type=<root>.Outer.Inner origin=null
$this: GET_VAR '<this>: <uninitialized parent>.<anonymous> declared in <no parent>.<anonymous>' type=<uninitialized parent>.<anonymous> origin=null
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-xx> visibility:public modality:FINAL <> ($this:<root>.test.<no name provided>) returnType:kotlin.Int
correspondingProperty: PROPERTY name:xx visibility:public modality:FINAL [val]
$this: VALUE_PARAMETER name:<this> type:<root>.test.<no name provided>
@@ -16,7 +16,7 @@ FILE fqName:<root> fileName:/genericClassInDifferentModule_m2.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun foo <Y> (y: Y of <root>.Derived1.foo): T of <root>.Derived1 declared in <root>.Derived1'
CALL 'public final fun <get-x> (): T of <root>.Derived1 declared in <root>.Base' type=T of <root>.Derived1 origin=null
$this: GET_VAR '<this>: <root>.Base declared in <root>.Base' type=<root>.Base<*> origin=null
$this: GET_VAR '<this>: <root>.Derived1 declared in <root>.Derived1' type=<root>.Derived1<T of <root>.Derived1> origin=null
PROPERTY name:bar visibility:public modality:FINAL [var]
FIELD PROPERTY_BACKING_FIELD name:bar type:T of <root>.Derived1 visibility:private
EXPRESSION_BODY
@@ -5,16 +5,16 @@ FILE fqName:<root> fileName:/explicitEqualsAndCompareToCallsOnPlatformTypeReceiv
RETURN type=kotlin.Nothing from='public final fun testPlatformEqualsPlatform (): kotlin.Boolean declared in <root>'
CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any' type=kotlin.Boolean origin=null
$this: CALL 'public open fun null0 (): kotlin.Double? [operator] declared in <root>.JavaClass' type=kotlin.Double? origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.JavaClass' type=<root>.JavaClass origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.testPlatformEqualsPlatform' type=<root>.JavaClass origin=null
other: CALL 'public open fun null0 (): kotlin.Double? [operator] declared in <root>.JavaClass' type=kotlin.Double? origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.JavaClass' type=<root>.JavaClass origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.testPlatformEqualsPlatform' type=<root>.JavaClass origin=null
FUN name:testPlatformEqualsKotlin visibility:public modality:FINAL <> ($receiver:<root>.JavaClass) returnType:kotlin.Boolean
$receiver: VALUE_PARAMETER name:<this> type:<root>.JavaClass
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun testPlatformEqualsKotlin (): kotlin.Boolean declared in <root>'
CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any' type=kotlin.Boolean origin=null
$this: CALL 'public open fun null0 (): kotlin.Double? [operator] declared in <root>.JavaClass' type=kotlin.Double? origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.JavaClass' type=<root>.JavaClass origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.testPlatformEqualsKotlin' type=<root>.JavaClass origin=null
other: CONST Double type=kotlin.Double value=0.0
FUN name:testKotlinEqualsPlatform visibility:public modality:FINAL <> ($receiver:<root>.JavaClass) returnType:kotlin.Boolean
$receiver: VALUE_PARAMETER name:<this> type:<root>.JavaClass
@@ -23,23 +23,23 @@ FILE fqName:<root> fileName:/explicitEqualsAndCompareToCallsOnPlatformTypeReceiv
CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any' type=kotlin.Boolean origin=null
$this: CONST Double type=kotlin.Double value=0.0
other: CALL 'public open fun null0 (): kotlin.Double? [operator] declared in <root>.JavaClass' type=kotlin.Double? origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.JavaClass' type=<root>.JavaClass origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.testKotlinEqualsPlatform' type=<root>.JavaClass origin=null
FUN name:testPlatformCompareToPlatform visibility:public modality:FINAL <> ($receiver:<root>.JavaClass) returnType:kotlin.Int
$receiver: VALUE_PARAMETER name:<this> type:<root>.JavaClass
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun testPlatformCompareToPlatform (): kotlin.Int declared in <root>'
CALL 'public open fun compareTo (other: kotlin.Double): kotlin.Int [operator] declared in kotlin.Double' type=kotlin.Int origin=null
$this: CALL 'public open fun null0 (): kotlin.Double? [operator] declared in <root>.JavaClass' type=kotlin.Double? origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.JavaClass' type=<root>.JavaClass origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.testPlatformCompareToPlatform' type=<root>.JavaClass origin=null
other: CALL 'public open fun null0 (): kotlin.Double? [operator] declared in <root>.JavaClass' type=kotlin.Double? origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.JavaClass' type=<root>.JavaClass origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.testPlatformCompareToPlatform' type=<root>.JavaClass origin=null
FUN name:testPlatformCompareToKotlin visibility:public modality:FINAL <> ($receiver:<root>.JavaClass) returnType:kotlin.Int
$receiver: VALUE_PARAMETER name:<this> type:<root>.JavaClass
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun testPlatformCompareToKotlin (): kotlin.Int declared in <root>'
CALL 'public open fun compareTo (other: kotlin.Double): kotlin.Int [operator] declared in kotlin.Double' type=kotlin.Int origin=null
$this: CALL 'public open fun null0 (): kotlin.Double? [operator] declared in <root>.JavaClass' type=kotlin.Double? origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.JavaClass' type=<root>.JavaClass origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.testPlatformCompareToKotlin' type=<root>.JavaClass origin=null
other: CONST Double type=kotlin.Double value=0.0
FUN name:testKotlinCompareToPlatform visibility:public modality:FINAL <> ($receiver:<root>.JavaClass) returnType:kotlin.Int
$receiver: VALUE_PARAMETER name:<this> type:<root>.JavaClass
@@ -48,4 +48,4 @@ FILE fqName:<root> fileName:/explicitEqualsAndCompareToCallsOnPlatformTypeReceiv
CALL 'public open fun compareTo (other: kotlin.Double): kotlin.Int [operator] declared in kotlin.Double' type=kotlin.Int origin=null
$this: CONST Double type=kotlin.Double value=0.0
other: CALL 'public open fun null0 (): kotlin.Double? [operator] declared in <root>.JavaClass' type=kotlin.Double? origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.JavaClass' type=<root>.JavaClass origin=null
$this: GET_VAR '<this>: <root>.JavaClass declared in <root>.testKotlinCompareToPlatform' type=<root>.JavaClass origin=null
@@ -45,7 +45,7 @@ FILE fqName:<root> fileName:/genericPropertyReferenceType.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun <get-y> (): T of <uninitialized parent> declared in <root>'
CALL 'public final fun <get-x> (): T of <uninitialized parent> declared in <root>.C' type=T of <uninitialized parent> origin=null
$this: GET_VAR '<this>: <root>.C declared in <root>.C' type=<root>.C<*> origin=null
$this: ERROR_CALL 'Unresolved reference: this@R|/y|' type=<root>.C<T of <uninitialized parent>>
FUN name:<set-y> visibility:public modality:FINAL <> (v:T of <uninitialized parent>) returnType:kotlin.Unit
correspondingProperty: PROPERTY name:y visibility:public modality:FINAL [var]
VALUE_PARAMETER name:v index:0 type:T of <uninitialized parent>
@@ -33,4 +33,4 @@ FILE fqName:<root> fileName:/nullabilityAssertionOnExtensionReceiver.kt
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
BLOCK_BODY
CALL 'public final fun memberExtension (): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=null
$this: GET_VAR '<this>: <root>.C declared in <root>.C' type=<root>.C origin=null
$this: GET_VAR '<this>: <root>.C declared in <root>.testMemberExt' type=<root>.C origin=null