diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt index 84c17976653..1939964b8ad 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt @@ -231,18 +231,42 @@ class Fir2IrDeclarationStorage( for ((index, valueParameter) in function.valueParameters.withIndex()) { valueParameters += createAndSaveIrParameter(valueParameter, index).apply { this.parent = parent } } - if (function !is FirConstructor && containingClass != null && (function as? FirNamedFunction)?.isStatic != true) { + if (function !is FirConstructor) { val thisOrigin = IrDeclarationOrigin.DEFINED - val thisType = containingClass.thisReceiver!!.type - dispatchReceiverParameter = irSymbolTable.declareValueParameter( - startOffset, endOffset, thisOrigin, WrappedReceiverParameterDescriptor(), - thisType - ) { symbol -> - IrValueParameterImpl( - startOffset, endOffset, thisOrigin, symbol, - Name.special(""), -1, thisType, - varargElementType = null, isCrossinline = false, isNoinline = false - ).apply { this.parent = parent } + if (function is FirNamedFunction) { + val receiverTypeRef = function.receiverTypeRef + if (receiverTypeRef != null) { + extensionReceiverParameter = receiverTypeRef.convertWithOffsets { startOffset, endOffset -> + val type = receiverTypeRef.toIrType(session, this@Fir2IrDeclarationStorage) + val receiverDescriptor = WrappedReceiverParameterDescriptor() + irSymbolTable.declareValueParameter( + startOffset, endOffset, thisOrigin, + receiverDescriptor, type + ) { symbol -> + IrValueParameterImpl( + startOffset, endOffset, thisOrigin, symbol, + Name.special(""), -1, type, + varargElementType = null, isCrossinline = false, isNoinline = false + ).apply { + this.parent = parent + receiverDescriptor.bind(this) + } + } + } + } + } + if (containingClass != null && (function as? FirNamedFunction)?.isStatic != true) { + val thisType = containingClass.thisReceiver!!.type + dispatchReceiverParameter = irSymbolTable.declareValueParameter( + startOffset, endOffset, thisOrigin, WrappedReceiverParameterDescriptor(), + thisType + ) { symbol -> + IrValueParameterImpl( + startOffset, endOffset, thisOrigin, symbol, + Name.special(""), -1, thisType, + varargElementType = null, isCrossinline = false, isNoinline = false + ).apply { this.parent = parent } + } } } } diff --git a/compiler/testData/ir/irText/classes/classMembers.fir.txt b/compiler/testData/ir/irText/classes/classMembers.fir.txt index 43924a3ebf6..248a66fc841 100644 --- a/compiler/testData/ir/irText/classes/classMembers.fir.txt +++ b/compiler/testData/ir/irText/classes/classMembers.fir.txt @@ -82,8 +82,9 @@ FILE fqName: fileName:/classMembers.kt BLOCK_BODY CALL 'public final fun println (message: kotlin.Any?): kotlin.Unit [inline] declared in kotlin.io' type=kotlin.Unit origin=null message: CONST String type=kotlin.String value="1" - FUN name:memberExtensionFunction visibility:public modality:FINAL <> ($this:.C) returnType:kotlin.Unit + FUN name:memberExtensionFunction visibility:public modality:FINAL <> ($this:.C, $receiver:kotlin.Int) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.C + $receiver: VALUE_PARAMETER name: type:kotlin.Int BLOCK_BODY CALL 'public final fun println (message: kotlin.Any?): kotlin.Unit [inline] declared in kotlin.io' type=kotlin.Unit origin=null message: CONST String type=kotlin.String value="2" @@ -98,8 +99,9 @@ FILE fqName: fileName:/classMembers.kt BLOCK_BODY CALL 'public final fun println (message: kotlin.Any?): kotlin.Unit [inline] declared in kotlin.io' type=kotlin.Unit origin=null message: CONST String type=kotlin.String value="3" - FUN name:memberExtensionFunction visibility:public modality:FINAL <> ($this:.C.NestedClass) returnType:kotlin.Unit + FUN name:memberExtensionFunction visibility:public modality:FINAL <> ($this:.C.NestedClass, $receiver:kotlin.Int) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.C.NestedClass + $receiver: VALUE_PARAMETER name: type:kotlin.Int BLOCK_BODY CALL 'public final fun println (message: kotlin.Any?): kotlin.Unit [inline] declared in kotlin.io' type=kotlin.Unit origin=null message: CONST String type=kotlin.String value="4" diff --git a/compiler/testData/ir/irText/classes/delegatedImplementation.fir.txt b/compiler/testData/ir/irText/classes/delegatedImplementation.fir.txt index bc3d2564ee4..86dce7598e0 100644 --- a/compiler/testData/ir/irText/classes/delegatedImplementation.fir.txt +++ b/compiler/testData/ir/irText/classes/delegatedImplementation.fir.txt @@ -7,9 +7,10 @@ FILE fqName: fileName:/delegatedImplementation.kt VALUE_PARAMETER name:s index:1 type:kotlin.String FUN name:bar visibility:public modality:ABSTRACT <> ($this:.IBase) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.IBase - FUN name:qux visibility:public modality:ABSTRACT <> ($this:.IBase) returnType:kotlin.Unit + FUN name:qux visibility:public modality:ABSTRACT <> ($this:.IBase, $receiver:kotlin.String) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.IBase - FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:kotlin.String + FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any @@ -38,8 +39,9 @@ FILE fqName: fileName:/delegatedImplementation.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun bar (): kotlin.Int declared in .BaseImpl' CONST Int type=kotlin.Int value=42 - FUN name:qux visibility:public modality:FINAL <> ($this:.BaseImpl) returnType:kotlin.Unit + FUN name:qux visibility:public modality:FINAL <> ($this:.BaseImpl, $receiver:kotlin.String) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.BaseImpl + $receiver: VALUE_PARAMETER name: type:kotlin.String BLOCK_BODY FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean overridden: diff --git a/compiler/testData/ir/irText/classes/objectLiteralExpressions.fir.txt b/compiler/testData/ir/irText/classes/objectLiteralExpressions.fir.txt index e8b5672cad2..1dedc4c9c01 100644 --- a/compiler/testData/ir/irText/classes/objectLiteralExpressions.fir.txt +++ b/compiler/testData/ir/irText/classes/objectLiteralExpressions.fir.txt @@ -112,7 +112,8 @@ FILE fqName: fileName:/objectLiteralExpressions.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:test4 visibility:public modality:FINAL <> () returnType:.Outer.Inner + FUN name:test4 visibility:public modality:FINAL <> ($receiver:.Outer) returnType:.Outer.Inner + $receiver: VALUE_PARAMETER name: type:.Outer BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test4 (): .Outer.Inner declared in ' BLOCK type=.test4. origin=OBJECT_LITERAL diff --git a/compiler/testData/ir/irText/classes/outerClassAccess.fir.txt b/compiler/testData/ir/irText/classes/outerClassAccess.fir.txt index 60bac96dae6..cbf312807f7 100644 --- a/compiler/testData/ir/irText/classes/outerClassAccess.fir.txt +++ b/compiler/testData/ir/irText/classes/outerClassAccess.fir.txt @@ -29,8 +29,9 @@ FILE fqName: fileName:/outerClassAccess.kt BLOCK_BODY CALL 'public final fun test (): kotlin.Unit declared in .Outer.Inner' type=kotlin.Unit origin=null CALL 'public final fun foo (): kotlin.Unit declared in .Outer' type=kotlin.Unit origin=null - FUN name:test3 visibility:public modality:FINAL <> ($this:.Outer.Inner.Inner2) returnType:kotlin.Unit + FUN name:test3 visibility:public modality:FINAL <> ($this:.Outer.Inner.Inner2, $receiver:.Outer) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.Outer.Inner.Inner2 + $receiver: VALUE_PARAMETER name: type:.Outer BLOCK_BODY CALL 'public final fun foo (): kotlin.Unit declared in .Outer' type=kotlin.Unit origin=null FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean diff --git a/compiler/testData/ir/irText/declarations/annotations/receiverParameterWithAnnotations.fir.txt b/compiler/testData/ir/irText/declarations/annotations/receiverParameterWithAnnotations.fir.txt index 8f4f7fcdda7..ae67a162a83 100644 --- a/compiler/testData/ir/irText/declarations/annotations/receiverParameterWithAnnotations.fir.txt +++ b/compiler/testData/ir/irText/declarations/annotations/receiverParameterWithAnnotations.fir.txt @@ -21,8 +21,9 @@ FILE fqName: fileName:/receiverParameterWithAnnotations.kt BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () [primary] declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]' - FUN name:f visibility:public modality:FINAL <> ($this:.A) returnType:kotlin.String + FUN name:f visibility:public modality:FINAL <> ($this:.A, $receiver:kotlin.String) returnType:kotlin.String $this: VALUE_PARAMETER name: type:.A + $receiver: VALUE_PARAMETER name: type:kotlin.String BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun f (): kotlin.String declared in .A' CONST String type=kotlin.String value="" @@ -46,7 +47,8 @@ FILE fqName: fileName:/receiverParameterWithAnnotations.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:topLevelF visibility:public modality:FINAL <> () returnType:kotlin.String + FUN name:topLevelF visibility:public modality:FINAL <> ($receiver:kotlin.String?) returnType:kotlin.String + $receiver: VALUE_PARAMETER name: type:kotlin.String? BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun topLevelF (): kotlin.String declared in ' CONST String type=kotlin.String value="" diff --git a/compiler/testData/ir/irText/declarations/parameters/fun.fir.txt b/compiler/testData/ir/irText/declarations/parameters/fun.fir.txt index 5396b73d911..f086653ec40 100644 --- a/compiler/testData/ir/irText/declarations/parameters/fun.fir.txt +++ b/compiler/testData/ir/irText/declarations/parameters/fun.fir.txt @@ -15,7 +15,8 @@ FILE fqName: fileName:/fun.kt FUN name:test3 visibility:public modality:FINAL <> (args:kotlin.Array) returnType:kotlin.Unit VALUE_PARAMETER name:args index:0 type:kotlin.Array BLOCK_BODY - FUN name:textExt1 visibility:public modality:FINAL <> (i:kotlin.Int, j:kotlin.String) returnType:kotlin.Unit + FUN name:textExt1 visibility:public modality:FINAL <> ($receiver:kotlin.String, i:kotlin.Int, j:kotlin.String) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:kotlin.String VALUE_PARAMETER name:i index:0 type:kotlin.Int VALUE_PARAMETER name:j index:1 type:kotlin.String BLOCK_BODY @@ -25,15 +26,17 @@ FILE fqName: fileName:/fun.kt BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () [primary] declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]' - FUN name:testMembetExt1 visibility:public modality:FINAL <> ($this:.Host, i:kotlin.Int, j:kotlin.String) returnType:kotlin.Unit + FUN name:testMembetExt1 visibility:public modality:FINAL <> ($this:.Host, $receiver:kotlin.String, i:kotlin.Int, j:kotlin.String) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.Host - VALUE_PARAMETER name:i index:0 type:kotlin.Int + $receiver: VALUE_PARAMETER name: type:kotlin.String + VALUE_PARAMETER name:i index:0 type:kotlin.Int VALUE_PARAMETER name:j index:1 type:kotlin.String BLOCK_BODY - FUN name:testMembetExt2 visibility:public modality:FINAL ($this:.Host, i:kotlin.Int, j:T of .Host.testMembetExt2) returnType:kotlin.Unit + FUN name:testMembetExt2 visibility:public modality:FINAL ($this:.Host, $receiver:kotlin.String, i:kotlin.Int, j:T of .Host.testMembetExt2) returnType:kotlin.Unit TYPE_PARAMETER name:T index:0 variance: superTypes:[] $this: VALUE_PARAMETER name: type:.Host - VALUE_PARAMETER name:i index:0 type:kotlin.Int + $receiver: VALUE_PARAMETER name: type:kotlin.String + VALUE_PARAMETER name:i index:0 type:kotlin.Int VALUE_PARAMETER name:j index:1 type:T of .Host.testMembetExt2 BLOCK_BODY FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean diff --git a/compiler/testData/ir/irText/declarations/parameters/localFun.fir.txt b/compiler/testData/ir/irText/declarations/parameters/localFun.fir.txt index ca2784275e7..fd7890e7b2e 100644 --- a/compiler/testData/ir/irText/declarations/parameters/localFun.fir.txt +++ b/compiler/testData/ir/irText/declarations/parameters/localFun.fir.txt @@ -18,7 +18,8 @@ FILE fqName: fileName:/localFun.kt FUN name:test3 visibility:local modality:FINAL <> (args:kotlin.Array) returnType:kotlin.Unit VALUE_PARAMETER name:args index:0 type:kotlin.Array BLOCK_BODY - FUN name:textExt1 visibility:local modality:FINAL <> (i:kotlin.Int, j:TT of .outer) returnType:kotlin.Unit + FUN name:textExt1 visibility:local modality:FINAL <> ($receiver:kotlin.String, i:kotlin.Int, j:TT of .outer) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:kotlin.String VALUE_PARAMETER name:i index:0 type:kotlin.Int VALUE_PARAMETER name:j index:1 type:TT of .outer BLOCK_BODY diff --git a/compiler/testData/ir/irText/declarations/provideDelegate/differentReceivers.fir.txt b/compiler/testData/ir/irText/declarations/provideDelegate/differentReceivers.fir.txt index 94a6b807af1..bdeca59a139 100644 --- a/compiler/testData/ir/irText/declarations/provideDelegate/differentReceivers.fir.txt +++ b/compiler/testData/ir/irText/declarations/provideDelegate/differentReceivers.fir.txt @@ -30,14 +30,16 @@ FILE fqName: fileName:/differentReceivers.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:provideDelegate visibility:public modality:FINAL <> (host:kotlin.Any?, p:kotlin.Any) returnType:kotlin.String + FUN name:provideDelegate visibility:public modality:FINAL <> ($receiver:.MyClass, host:kotlin.Any?, p:kotlin.Any) returnType:kotlin.String + $receiver: VALUE_PARAMETER name: type:.MyClass VALUE_PARAMETER name:host index:0 type:kotlin.Any? VALUE_PARAMETER name:p index:1 type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun provideDelegate (host: kotlin.Any?, p: kotlin.Any): kotlin.String declared in ' CALL 'public final fun (): kotlin.String declared in .MyClass' type=kotlin.String origin=null $this: ERROR_CALL 'Unresolved reference: this#' type=.MyClass - FUN name:getValue visibility:public modality:FINAL <> (receiver:kotlin.Any?, p:kotlin.Any) returnType:kotlin.String + FUN name:getValue visibility:public modality:FINAL <> ($receiver:kotlin.String, receiver:kotlin.Any?, p:kotlin.Any) returnType:kotlin.String + $receiver: VALUE_PARAMETER name: type:kotlin.String VALUE_PARAMETER name:receiver index:0 type:kotlin.Any? VALUE_PARAMETER name:p index:1 type:kotlin.Any BLOCK_BODY diff --git a/compiler/testData/ir/irText/declarations/provideDelegate/localDifferentReceivers.fir.txt b/compiler/testData/ir/irText/declarations/provideDelegate/localDifferentReceivers.fir.txt index ac2e86ac633..12e567135d7 100644 --- a/compiler/testData/ir/irText/declarations/provideDelegate/localDifferentReceivers.fir.txt +++ b/compiler/testData/ir/irText/declarations/provideDelegate/localDifferentReceivers.fir.txt @@ -30,14 +30,16 @@ FILE fqName: fileName:/localDifferentReceivers.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:provideDelegate visibility:public modality:FINAL <> (host:kotlin.Any?, p:kotlin.Any) returnType:kotlin.String + FUN name:provideDelegate visibility:public modality:FINAL <> ($receiver:.MyClass, host:kotlin.Any?, p:kotlin.Any) returnType:kotlin.String + $receiver: VALUE_PARAMETER name: type:.MyClass VALUE_PARAMETER name:host index:0 type:kotlin.Any? VALUE_PARAMETER name:p index:1 type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun provideDelegate (host: kotlin.Any?, p: kotlin.Any): kotlin.String declared in ' CALL 'public final fun (): kotlin.String declared in .MyClass' type=kotlin.String origin=null $this: ERROR_CALL 'Unresolved reference: this#' type=.MyClass - FUN name:getValue visibility:public modality:FINAL <> (receiver:kotlin.Any?, p:kotlin.Any) returnType:kotlin.String + FUN name:getValue visibility:public modality:FINAL <> ($receiver:kotlin.String, receiver:kotlin.Any?, p:kotlin.Any) returnType:kotlin.String + $receiver: VALUE_PARAMETER name: type:kotlin.String VALUE_PARAMETER name:receiver index:0 type:kotlin.Any? VALUE_PARAMETER name:p index:1 type:kotlin.Any BLOCK_BODY diff --git a/compiler/testData/ir/irText/declarations/provideDelegate/memberExtension.fir.txt b/compiler/testData/ir/irText/declarations/provideDelegate/memberExtension.fir.txt index a8cd0f60ab4..fd9ab362d22 100644 --- a/compiler/testData/ir/irText/declarations/provideDelegate/memberExtension.fir.txt +++ b/compiler/testData/ir/irText/declarations/provideDelegate/memberExtension.fir.txt @@ -45,9 +45,10 @@ FILE fqName: fileName:/memberExtension.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:provideDelegate visibility:public modality:FINAL <> ($this:.Host, host:kotlin.Any?, p:kotlin.Any) returnType:.Host.StringDelegate + FUN name:provideDelegate visibility:public modality:FINAL <> ($this:.Host, $receiver:kotlin.String, host:kotlin.Any?, p:kotlin.Any) returnType:.Host.StringDelegate $this: VALUE_PARAMETER name: type:.Host - VALUE_PARAMETER name:host index:0 type:kotlin.Any? + $receiver: VALUE_PARAMETER name: type:kotlin.String + VALUE_PARAMETER name:host index:0 type:kotlin.Any? VALUE_PARAMETER name:p index:1 type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun provideDelegate (host: kotlin.Any?, p: kotlin.Any): .Host.StringDelegate declared in .Host' diff --git a/compiler/testData/ir/irText/errors/suppressedNonPublicCall.fir.txt b/compiler/testData/ir/irText/errors/suppressedNonPublicCall.fir.txt index 21a78f78e8e..234639041f8 100644 --- a/compiler/testData/ir/irText/errors/suppressedNonPublicCall.fir.txt +++ b/compiler/testData/ir/irText/errors/suppressedNonPublicCall.fir.txt @@ -21,7 +21,8 @@ FILE fqName: fileName:/suppressedNonPublicCall.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:foo visibility:public modality:FINAL <> () returnType:kotlin.Unit [inline] + FUN name:foo visibility:public modality:FINAL <> ($receiver:.C) returnType:kotlin.Unit [inline] + $receiver: VALUE_PARAMETER name: type:.C BLOCK_BODY CALL 'internal final fun bar (): kotlin.Unit declared in .C' type=kotlin.Unit origin=null diff --git a/compiler/testData/ir/irText/expressions/argumentMappedWithError.fir.txt b/compiler/testData/ir/irText/expressions/argumentMappedWithError.fir.txt index 522213287bd..1d438a2c3a1 100644 --- a/compiler/testData/ir/irText/expressions/argumentMappedWithError.fir.txt +++ b/compiler/testData/ir/irText/expressions/argumentMappedWithError.fir.txt @@ -1,6 +1,7 @@ FILE fqName: fileName:/argumentMappedWithError.kt - FUN name:convert visibility:public modality:FINAL () returnType:R of .convert + FUN name:convert visibility:public modality:FINAL ($receiver:kotlin.Number) returnType:R of .convert TYPE_PARAMETER name:R index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:kotlin.Number BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun convert (): R of .convert declared in ' CALL 'public final fun TODO (): kotlin.Nothing [inline] declared in kotlin' type=kotlin.Nothing origin=null @@ -15,4 +16,4 @@ FILE fqName: fileName:/argumentMappedWithError.kt CALL 'public final fun foo (arg: kotlin.Number): kotlin.Unit declared in ' type=kotlin.Unit origin=null arg: CALL 'public final fun convert (): R of .convert declared in ' type=kotlin.Number origin=null : - + $receiver: GET_VAR 'val x: kotlin.Int [val] declared in .main' type=kotlin.Int origin=null diff --git a/compiler/testData/ir/irText/expressions/arrayAugmentedAssignment2.fir.txt b/compiler/testData/ir/irText/expressions/arrayAugmentedAssignment2.fir.txt index 11ef60b5c73..a7de4258857 100644 --- a/compiler/testData/ir/irText/expressions/arrayAugmentedAssignment2.fir.txt +++ b/compiler/testData/ir/irText/expressions/arrayAugmentedAssignment2.fir.txt @@ -19,9 +19,10 @@ FILE fqName: fileName:/arrayAugmentedAssignment2.kt $this: VALUE_PARAMETER name: type:kotlin.Any CLASS INTERFACE name:IB modality:ABSTRACT visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.IB - FUN name:set visibility:public modality:ABSTRACT <> ($this:.IB, index:kotlin.String, value:kotlin.Int) returnType:kotlin.Unit + FUN name:set visibility:public modality:ABSTRACT <> ($this:.IB, $receiver:.IA, index:kotlin.String, value:kotlin.Int) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.IB - VALUE_PARAMETER name:index index:0 type:kotlin.String + $receiver: VALUE_PARAMETER name: type:.IA + VALUE_PARAMETER name:index index:0 type:kotlin.String VALUE_PARAMETER name:value index:1 type:kotlin.Int FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean overridden: @@ -36,7 +37,8 @@ FILE fqName: fileName:/arrayAugmentedAssignment2.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:test visibility:public modality:FINAL <> (a:.IA) returnType:kotlin.Unit + FUN name:test visibility:public modality:FINAL <> ($receiver:.IB, a:.IA) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.IB VALUE_PARAMETER name:a index:0 type:.IA BLOCK_BODY ERROR_CALL 'FirArraySetCall (resolve isn't supported yet)' type=kotlin.Unit diff --git a/compiler/testData/ir/irText/expressions/augmentedAssignment2.fir.txt b/compiler/testData/ir/irText/expressions/augmentedAssignment2.fir.txt index 86ba327fa78..f487cf570a1 100644 --- a/compiler/testData/ir/irText/expressions/augmentedAssignment2.fir.txt +++ b/compiler/testData/ir/irText/expressions/augmentedAssignment2.fir.txt @@ -18,19 +18,24 @@ FILE fqName: fileName:/augmentedAssignment2.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:plusAssign visibility:public modality:FINAL <> (s:kotlin.String) returnType:kotlin.Unit + FUN name:plusAssign visibility:public modality:FINAL <> ($receiver:.A, s:kotlin.String) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:s index:0 type:kotlin.String BLOCK_BODY - FUN name:minusAssign visibility:public modality:FINAL <> (s:kotlin.String) returnType:kotlin.Unit + FUN name:minusAssign visibility:public modality:FINAL <> ($receiver:.A, s:kotlin.String) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:s index:0 type:kotlin.String BLOCK_BODY - FUN name:timesAssign visibility:public modality:FINAL <> (s:kotlin.String) returnType:kotlin.Unit + FUN name:timesAssign visibility:public modality:FINAL <> ($receiver:.A, s:kotlin.String) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:s index:0 type:kotlin.String BLOCK_BODY - FUN name:divAssign visibility:public modality:FINAL <> (s:kotlin.String) returnType:kotlin.Unit + FUN name:divAssign visibility:public modality:FINAL <> ($receiver:.A, s:kotlin.String) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:s index:0 type:kotlin.String BLOCK_BODY - FUN name:remAssign visibility:public modality:FINAL <> (s:kotlin.String) returnType:kotlin.Unit + FUN name:remAssign visibility:public modality:FINAL <> ($receiver:.A, s:kotlin.String) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:s index:0 type:kotlin.String BLOCK_BODY PROPERTY name:p visibility:public modality:FINAL [val] diff --git a/compiler/testData/ir/irText/expressions/augmentedAssignmentWithExpression.fir.txt b/compiler/testData/ir/irText/expressions/augmentedAssignmentWithExpression.fir.txt index 72cd6464f5d..6c4f784be62 100644 --- a/compiler/testData/ir/irText/expressions/augmentedAssignmentWithExpression.fir.txt +++ b/compiler/testData/ir/irText/expressions/augmentedAssignmentWithExpression.fir.txt @@ -30,7 +30,8 @@ FILE fqName: fileName:/augmentedAssignmentWithExpression.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun foo (): .Host declared in ' CONSTRUCTOR_CALL 'public constructor () [primary] declared in .Host' type=.Host origin=null - FUN name:test2 visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:test2 visibility:public modality:FINAL <> ($receiver:.Host) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.Host BLOCK_BODY ERROR_CALL 'Unresolved reference: this#' type=IrErrorType FUN name:test3 visibility:public modality:FINAL <> () returnType:kotlin.Unit diff --git a/compiler/testData/ir/irText/expressions/boundCallableReferences.fir.txt b/compiler/testData/ir/irText/expressions/boundCallableReferences.fir.txt index 99c298cda6b..0658133d0e1 100644 --- a/compiler/testData/ir/irText/expressions/boundCallableReferences.fir.txt +++ b/compiler/testData/ir/irText/expressions/boundCallableReferences.fir.txt @@ -32,7 +32,8 @@ FILE fqName: fileName:/boundCallableReferences.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:qux visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:qux visibility:public modality:FINAL <> ($receiver:.A) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.A BLOCK_BODY PROPERTY name:test1 visibility:public modality:FINAL [val] FIELD PROPERTY_BACKING_FIELD name:test1 type:IrErrorType visibility:public [final,static] diff --git a/compiler/testData/ir/irText/expressions/calls.fir.txt b/compiler/testData/ir/irText/expressions/calls.fir.txt index 0e37e8a53fe..e37c2be5f38 100644 --- a/compiler/testData/ir/irText/expressions/calls.fir.txt +++ b/compiler/testData/ir/irText/expressions/calls.fir.txt @@ -21,18 +21,21 @@ FILE fqName: fileName:/calls.kt x: GET_VAR 'x: kotlin.Int declared in .qux' type=kotlin.Int origin=null y: GET_VAR 'x: kotlin.Int declared in .qux' type=kotlin.Int origin=null y: GET_VAR 'x: kotlin.Int declared in .qux' type=kotlin.Int origin=null - FUN name:ext1 visibility:public modality:FINAL <> () returnType:kotlin.Int + FUN name:ext1 visibility:public modality:FINAL <> ($receiver:kotlin.Int) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:kotlin.Int BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun ext1 (): kotlin.Int declared in ' ERROR_CALL 'Unresolved reference: this#' type=kotlin.Int - FUN name:ext2 visibility:public modality:FINAL <> (x:kotlin.Int) returnType:kotlin.Int + FUN name:ext2 visibility:public modality:FINAL <> ($receiver:kotlin.Int, x:kotlin.Int) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:kotlin.Int VALUE_PARAMETER name:x index:0 type:kotlin.Int BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun ext2 (x: kotlin.Int): kotlin.Int declared in ' CALL 'public final fun foo (x: kotlin.Int, y: kotlin.Int): kotlin.Int declared in ' type=kotlin.Int origin=null x: ERROR_CALL 'Unresolved reference: this#' type=kotlin.Int y: GET_VAR 'x: kotlin.Int declared in .ext2' type=kotlin.Int origin=null - FUN name:ext3 visibility:public modality:FINAL <> (x:kotlin.Int) returnType:kotlin.Int + FUN name:ext3 visibility:public modality:FINAL <> ($receiver:kotlin.Int, x:kotlin.Int) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:kotlin.Int VALUE_PARAMETER name:x index:0 type:kotlin.Int BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun ext3 (x: kotlin.Int): kotlin.Int declared in ' diff --git a/compiler/testData/ir/irText/expressions/castToTypeParameter.fir.txt b/compiler/testData/ir/irText/expressions/castToTypeParameter.fir.txt index e83e6c69295..a31b290f95b 100644 --- a/compiler/testData/ir/irText/expressions/castToTypeParameter.fir.txt +++ b/compiler/testData/ir/irText/expressions/castToTypeParameter.fir.txt @@ -6,8 +6,9 @@ FILE fqName: fileName:/castToTypeParameter.kt RETURN type=kotlin.Nothing from='public final fun castFun (x: kotlin.Any): T of .castFun declared in ' TYPE_OP type=T of .castFun origin=CAST typeOperand=T of .castFun GET_VAR 'x: kotlin.Any declared in .castFun' type=kotlin.Any origin=null - FUN name:castExtFun visibility:public modality:FINAL () returnType:T of .castExtFun + FUN name:castExtFun visibility:public modality:FINAL ($receiver:kotlin.Any) returnType:T of .castExtFun TYPE_PARAMETER name:T index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun castExtFun (): T of .castExtFun declared in ' TYPE_OP type=T of .castExtFun origin=CAST typeOperand=T of .castExtFun @@ -41,15 +42,17 @@ FILE fqName: fileName:/castToTypeParameter.kt RETURN type=kotlin.Nothing from='public final fun castGenericMemberFun (x: kotlin.Any): TF of .Host.castGenericMemberFun declared in .Host' TYPE_OP type=TF of .Host.castGenericMemberFun origin=CAST typeOperand=TF of .Host.castGenericMemberFun GET_VAR 'x: kotlin.Any declared in .Host.castGenericMemberFun' type=kotlin.Any origin=null - FUN name:castMemberExtFun visibility:public modality:FINAL <> ($this:.Host) returnType:T of .Host + FUN name:castMemberExtFun visibility:public modality:FINAL <> ($this:.Host, $receiver:kotlin.Any) returnType:T of .Host $this: VALUE_PARAMETER name: type:.Host + $receiver: VALUE_PARAMETER name: type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun castMemberExtFun (): T of .Host declared in .Host' TYPE_OP type=T of .Host origin=CAST typeOperand=T of .Host ERROR_CALL 'Unresolved reference: this#' type=kotlin.Any - FUN name:castGenericMemberExtFun visibility:public modality:FINAL ($this:.Host) returnType:TF of .Host.castGenericMemberExtFun + FUN name:castGenericMemberExtFun visibility:public modality:FINAL ($this:.Host, $receiver:kotlin.Any) returnType:TF of .Host.castGenericMemberExtFun TYPE_PARAMETER name:TF index:0 variance: superTypes:[] $this: VALUE_PARAMETER name: type:.Host + $receiver: VALUE_PARAMETER name: type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun castGenericMemberExtFun (): TF of .Host.castGenericMemberExtFun declared in .Host' TYPE_OP type=TF of .Host.castGenericMemberExtFun origin=CAST typeOperand=TF of .Host.castGenericMemberExtFun diff --git a/compiler/testData/ir/irText/expressions/complexAugmentedAssignment.fir.txt b/compiler/testData/ir/irText/expressions/complexAugmentedAssignment.fir.txt index d28577c5c7b..ba3b06509a6 100644 --- a/compiler/testData/ir/irText/expressions/complexAugmentedAssignment.fir.txt +++ b/compiler/testData/ir/irText/expressions/complexAugmentedAssignment.fir.txt @@ -210,9 +210,10 @@ FILE fqName: fileName:/complexAugmentedAssignment.kt BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () [primary] declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]' - FUN name:plusAssign visibility:public modality:FINAL <> ($this:.Host, b:.B) returnType:kotlin.Unit + FUN name:plusAssign visibility:public modality:FINAL <> ($this:.Host, $receiver:.B, b:.B) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.Host - VALUE_PARAMETER name:b index:0 type:.B + $receiver: VALUE_PARAMETER name: type:.B + VALUE_PARAMETER name:b index:0 type:.B BLOCK_BODY SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:public ' type=kotlin.Int origin=null value: CALL 'public final fun (): kotlin.Int declared in .B' type=kotlin.Int origin=null @@ -230,7 +231,8 @@ FILE fqName: fileName:/complexAugmentedAssignment.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:test3 visibility:public modality:FINAL <> (v:.B) returnType:kotlin.Unit + FUN name:test3 visibility:public modality:FINAL <> ($receiver:.Host, v:.B) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.Host VALUE_PARAMETER name:v index:0 type:.B BLOCK_BODY ERROR_CALL 'Unresolved reference: R|/v|' type=IrErrorType diff --git a/compiler/testData/ir/irText/expressions/conventionComparisons.fir.txt b/compiler/testData/ir/irText/expressions/conventionComparisons.fir.txt index 1bed160ef95..eaf3c7f607a 100644 --- a/compiler/testData/ir/irText/expressions/conventionComparisons.fir.txt +++ b/compiler/testData/ir/irText/expressions/conventionComparisons.fir.txt @@ -16,9 +16,10 @@ FILE fqName: fileName:/conventionComparisons.kt $this: VALUE_PARAMETER name: type:kotlin.Any CLASS INTERFACE name:IB modality:ABSTRACT visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.IB - FUN name:compareTo visibility:public modality:ABSTRACT <> ($this:.IB, other:.IA) returnType:kotlin.Int + FUN name:compareTo visibility:public modality:ABSTRACT <> ($this:.IB, $receiver:.IA, other:.IA) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.IB - VALUE_PARAMETER name:other index:0 type:.IA + $receiver: VALUE_PARAMETER name: type:.IA + VALUE_PARAMETER name:other index:0 type:.IA FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any @@ -32,25 +33,29 @@ FILE fqName: fileName:/conventionComparisons.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:test1 visibility:public modality:FINAL <> (a1:.IA, a2:.IA) returnType:kotlin.Boolean + FUN name:test1 visibility:public modality:FINAL <> ($receiver:.IB, a1:.IA, a2:.IA) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:.IB VALUE_PARAMETER name:a1 index:0 type:.IA VALUE_PARAMETER name:a2 index:1 type:.IA BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test1 (a1: .IA, a2: .IA): kotlin.Boolean declared in ' ERROR_CALL 'Comparison of arguments with unsupported type: /IA' type=kotlin.Boolean - FUN name:test2 visibility:public modality:FINAL <> (a1:.IA, a2:.IA) returnType:kotlin.Boolean + FUN name:test2 visibility:public modality:FINAL <> ($receiver:.IB, a1:.IA, a2:.IA) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:.IB VALUE_PARAMETER name:a1 index:0 type:.IA VALUE_PARAMETER name:a2 index:1 type:.IA BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test2 (a1: .IA, a2: .IA): kotlin.Boolean declared in ' ERROR_CALL 'Comparison of arguments with unsupported type: /IA' type=kotlin.Boolean - FUN name:test3 visibility:public modality:FINAL <> (a1:.IA, a2:.IA) returnType:kotlin.Boolean + FUN name:test3 visibility:public modality:FINAL <> ($receiver:.IB, a1:.IA, a2:.IA) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:.IB VALUE_PARAMETER name:a1 index:0 type:.IA VALUE_PARAMETER name:a2 index:1 type:.IA BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test3 (a1: .IA, a2: .IA): kotlin.Boolean declared in ' ERROR_CALL 'Comparison of arguments with unsupported type: /IA' type=kotlin.Boolean - FUN name:test4 visibility:public modality:FINAL <> (a1:.IA, a2:.IA) returnType:kotlin.Boolean + FUN name:test4 visibility:public modality:FINAL <> ($receiver:.IB, a1:.IA, a2:.IA) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:.IB VALUE_PARAMETER name:a1 index:0 type:.IA VALUE_PARAMETER name:a2 index:1 type:.IA BLOCK_BODY diff --git a/compiler/testData/ir/irText/expressions/destructuring1.fir.txt b/compiler/testData/ir/irText/expressions/destructuring1.fir.txt index 5c2d3d31619..79c159495f7 100644 --- a/compiler/testData/ir/irText/expressions/destructuring1.fir.txt +++ b/compiler/testData/ir/irText/expressions/destructuring1.fir.txt @@ -24,13 +24,15 @@ FILE fqName: fileName:/destructuring1.kt BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () [primary] declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:B modality:FINAL visibility:public superTypes:[kotlin.Any]' - FUN name:component1 visibility:public modality:FINAL <> ($this:.B) returnType:kotlin.Int + FUN name:component1 visibility:public modality:FINAL <> ($this:.B, $receiver:.A) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.B + $receiver: VALUE_PARAMETER name: type:.A BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun component1 (): kotlin.Int declared in .B' CONST Int type=kotlin.Int value=1 - FUN name:component2 visibility:public modality:FINAL <> ($this:.B) returnType:kotlin.Int + FUN name:component2 visibility:public modality:FINAL <> ($this:.B, $receiver:.A) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.B + $receiver: VALUE_PARAMETER name: type:.A BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun component2 (): kotlin.Int declared in .B' CONST Int type=kotlin.Int value=2 @@ -47,7 +49,8 @@ FILE fqName: fileName:/destructuring1.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:test visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:test visibility:public modality:FINAL <> ($receiver:.B) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.B BLOCK_BODY VAR name: type:.A [val] GET_OBJECT 'CLASS OBJECT name:A modality:FINAL visibility:public superTypes:[kotlin.Any]' type=.A diff --git a/compiler/testData/ir/irText/expressions/destructuringWithUnderscore.fir.txt b/compiler/testData/ir/irText/expressions/destructuringWithUnderscore.fir.txt index aa5832c3243..e6a5e374c3c 100644 --- a/compiler/testData/ir/irText/expressions/destructuringWithUnderscore.fir.txt +++ b/compiler/testData/ir/irText/expressions/destructuringWithUnderscore.fir.txt @@ -24,18 +24,21 @@ FILE fqName: fileName:/destructuringWithUnderscore.kt BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () [primary] declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:B modality:FINAL visibility:public superTypes:[kotlin.Any]' - FUN name:component1 visibility:public modality:FINAL <> ($this:.B) returnType:kotlin.Int + FUN name:component1 visibility:public modality:FINAL <> ($this:.B, $receiver:.A) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.B + $receiver: VALUE_PARAMETER name: type:.A BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun component1 (): kotlin.Int declared in .B' CONST Int type=kotlin.Int value=1 - FUN name:component2 visibility:public modality:FINAL <> ($this:.B) returnType:kotlin.Int + FUN name:component2 visibility:public modality:FINAL <> ($this:.B, $receiver:.A) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.B + $receiver: VALUE_PARAMETER name: type:.A BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun component2 (): kotlin.Int declared in .B' CONST Int type=kotlin.Int value=2 - FUN name:component3 visibility:public modality:FINAL <> ($this:.B) returnType:kotlin.Int + FUN name:component3 visibility:public modality:FINAL <> ($this:.B, $receiver:.A) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.B + $receiver: VALUE_PARAMETER name: type:.A BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun component3 (): kotlin.Int declared in .B' CONST Int type=kotlin.Int value=3 @@ -52,7 +55,8 @@ FILE fqName: fileName:/destructuringWithUnderscore.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:test visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:test visibility:public modality:FINAL <> ($receiver:.B) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.B BLOCK_BODY VAR name: type:.A [val] GET_OBJECT 'CLASS OBJECT name:A modality:FINAL visibility:public superTypes:[kotlin.Any]' type=.A diff --git a/compiler/testData/ir/irText/expressions/extensionPropertyGetterCall.fir.txt b/compiler/testData/ir/irText/expressions/extensionPropertyGetterCall.fir.txt index 55808a9ddd3..420989586df 100644 --- a/compiler/testData/ir/irText/expressions/extensionPropertyGetterCall.fir.txt +++ b/compiler/testData/ir/irText/expressions/extensionPropertyGetterCall.fir.txt @@ -5,7 +5,8 @@ FILE fqName: fileName:/extensionPropertyGetterCall.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun (): kotlin.String declared in ' CONST String type=kotlin.String value="OK" - FUN name:test5 visibility:public modality:FINAL <> () returnType:kotlin.String + FUN name:test5 visibility:public modality:FINAL <> ($receiver:kotlin.String) returnType:kotlin.String + $receiver: VALUE_PARAMETER name: type:kotlin.String BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test5 (): kotlin.String declared in ' CALL 'public final fun (): kotlin.String declared in ' type=kotlin.String origin=null diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointCompareTo.fir.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointCompareTo.fir.txt index 30c889f5dbc..a26c98a2027 100644 --- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointCompareTo.fir.txt +++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointCompareTo.fir.txt @@ -139,13 +139,15 @@ FILE fqName: fileName:/floatingPointCompareTo.kt BRANCH if: CONST Boolean type=kotlin.Boolean value=true then: CONST Boolean type=kotlin.Boolean value=false - FUN name:test1fr visibility:public modality:FINAL <> (x:kotlin.Float) returnType:kotlin.Int + FUN name:test1fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Float) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:kotlin.Float VALUE_PARAMETER name:x index:0 type:kotlin.Float BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test1fr (x: kotlin.Float): kotlin.Int declared in ' CALL 'public open fun compareTo (other: kotlin.Float): kotlin.Int declared in kotlin.Float' type=kotlin.Int origin=null other: GET_VAR 'x: kotlin.Float declared in .test1fr' type=kotlin.Float origin=null - FUN name:test2fr visibility:public modality:FINAL <> (x:kotlin.Any) returnType:kotlin.Boolean + FUN name:test2fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Any) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:kotlin.Float VALUE_PARAMETER name:x index:0 type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test2fr (x: kotlin.Any): kotlin.Boolean declared in ' @@ -160,7 +162,8 @@ FILE fqName: fileName:/floatingPointCompareTo.kt BRANCH if: CONST Boolean type=kotlin.Boolean value=true then: CONST Boolean type=kotlin.Boolean value=false - FUN name:test3fr visibility:public modality:FINAL <> (x:kotlin.Any) returnType:kotlin.Boolean + FUN name:test3fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Any) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:kotlin.Float VALUE_PARAMETER name:x index:0 type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test3fr (x: kotlin.Any): kotlin.Boolean declared in ' diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.fir.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.fir.txt index 52ffd3ec4fe..cf92c260ec9 100644 --- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.fir.txt +++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.fir.txt @@ -181,31 +181,36 @@ FILE fqName: fileName:/floatingPointEquals.kt BRANCH if: CONST Boolean type=kotlin.Boolean value=true then: CONST Boolean type=kotlin.Boolean value=false - FUN name:test1fr visibility:public modality:FINAL <> (x:kotlin.Float) returnType:kotlin.Boolean + FUN name:test1fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Float) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:kotlin.Float VALUE_PARAMETER name:x index:0 type:kotlin.Float BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test1fr (x: kotlin.Float): kotlin.Boolean declared in ' CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any' type=kotlin.Boolean origin=null other: GET_VAR 'x: kotlin.Float declared in .test1fr' type=kotlin.Float origin=null - FUN name:test2fr visibility:public modality:FINAL <> (x:kotlin.Float?) returnType:kotlin.Boolean + FUN name:test2fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Float?) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:kotlin.Float VALUE_PARAMETER name:x index:0 type:kotlin.Float? BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test2fr (x: kotlin.Float?): kotlin.Boolean declared in ' CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any' type=kotlin.Boolean origin=null other: GET_VAR 'x: kotlin.Float? declared in .test2fr' type=kotlin.Float? origin=null - FUN name:test3fr visibility:public modality:FINAL <> (x:kotlin.Any) returnType:kotlin.Boolean + FUN name:test3fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Any) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:kotlin.Float VALUE_PARAMETER name:x index:0 type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test3fr (x: kotlin.Any): kotlin.Boolean declared in ' CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any' type=kotlin.Boolean origin=null other: GET_VAR 'x: kotlin.Any declared in .test3fr' type=kotlin.Any origin=null - FUN name:test4fr visibility:public modality:FINAL <> (x:kotlin.Number) returnType:kotlin.Boolean + FUN name:test4fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Number) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:kotlin.Float VALUE_PARAMETER name:x index:0 type:kotlin.Number BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test4fr (x: kotlin.Number): kotlin.Boolean declared in ' CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any' type=kotlin.Boolean origin=null other: GET_VAR 'x: kotlin.Number declared in .test4fr' type=kotlin.Number origin=null - FUN name:test5fr visibility:public modality:FINAL <> (x:kotlin.Any) returnType:kotlin.Boolean + FUN name:test5fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Any) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:kotlin.Float VALUE_PARAMETER name:x index:0 type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test5fr (x: kotlin.Any): kotlin.Boolean declared in ' @@ -218,7 +223,8 @@ FILE fqName: fileName:/floatingPointEquals.kt BRANCH if: CONST Boolean type=kotlin.Boolean value=true then: CONST Boolean type=kotlin.Boolean value=false - FUN name:test6fr visibility:public modality:FINAL <> (x:kotlin.Any) returnType:kotlin.Boolean + FUN name:test6fr visibility:public modality:FINAL <> ($receiver:kotlin.Float, x:kotlin.Any) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:kotlin.Float VALUE_PARAMETER name:x index:0 type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test6fr (x: kotlin.Any): kotlin.Boolean declared in ' diff --git a/compiler/testData/ir/irText/expressions/forWithImplicitReceivers.fir.txt b/compiler/testData/ir/irText/expressions/forWithImplicitReceivers.fir.txt index 64ddd4e4b6a..f9c84e65f5d 100644 --- a/compiler/testData/ir/irText/expressions/forWithImplicitReceivers.fir.txt +++ b/compiler/testData/ir/irText/expressions/forWithImplicitReceivers.fir.txt @@ -59,19 +59,22 @@ FILE fqName: fileName:/forWithImplicitReceivers.kt $this: VALUE_PARAMETER name: type:kotlin.Any CLASS INTERFACE name:IReceiver modality:ABSTRACT visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.IReceiver - FUN name:iterator visibility:public modality:OPEN <> ($this:.IReceiver) returnType:.IntCell + FUN name:iterator visibility:public modality:OPEN <> ($this:.IReceiver, $receiver:.FiveTimes) returnType:.IntCell $this: VALUE_PARAMETER name: type:.IReceiver + $receiver: VALUE_PARAMETER name: type:.FiveTimes BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun iterator (): .IntCell declared in .IReceiver' CONSTRUCTOR_CALL 'public constructor (value: kotlin.Int) [primary] declared in .IntCell' type=.IntCell origin=null value: CONST Int type=kotlin.Int value=5 - FUN name:hasNext visibility:public modality:OPEN <> ($this:.IReceiver) returnType:kotlin.Boolean + FUN name:hasNext visibility:public modality:OPEN <> ($this:.IReceiver, $receiver:.IntCell) returnType:kotlin.Boolean $this: VALUE_PARAMETER name: type:.IReceiver + $receiver: VALUE_PARAMETER name: type:.IntCell BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun hasNext (): kotlin.Boolean declared in .IReceiver' ERROR_CALL 'Comparison of arguments with different types: kotlin/Int, kotlin/Boolean' type=kotlin.Boolean - FUN name:next visibility:public modality:OPEN <> ($this:.IReceiver) returnType:kotlin.Int + FUN name:next visibility:public modality:OPEN <> ($this:.IReceiver, $receiver:.IntCell) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.IReceiver + $receiver: VALUE_PARAMETER name: type:.IntCell BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun next (): kotlin.Int declared in .IReceiver' BLOCK type=kotlin.Int origin=null @@ -94,7 +97,8 @@ FILE fqName: fileName:/forWithImplicitReceivers.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:test visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:test visibility:public modality:FINAL <> ($receiver:.IReceiver) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.IReceiver BLOCK_BODY VAR name: type:.FiveTimes [val] GET_OBJECT 'CLASS OBJECT name:FiveTimes modality:FINAL visibility:public superTypes:[kotlin.Any]' type=.FiveTimes diff --git a/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.fir.txt b/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.fir.txt index aec76026b11..118a9a810b3 100644 --- a/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.fir.txt +++ b/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.fir.txt @@ -1,6 +1,7 @@ FILE fqName: fileName:/implicitCastToTypeParameter.kt - FUN name:test1 visibility:public modality:FINAL () returnType:T of .test1? [inline] + FUN name:test1 visibility:public modality:FINAL ($receiver:kotlin.Any) returnType:T of .test1? [inline] TYPE_PARAMETER name:T index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test1 (): T of .test1? [inline] declared in ' WHEN type=T of .test1? origin=IF diff --git a/compiler/testData/ir/irText/expressions/kt23030.fir.txt b/compiler/testData/ir/irText/expressions/kt23030.fir.txt index 73c9a8ae0c7..e429e4e92a3 100644 --- a/compiler/testData/ir/irText/expressions/kt23030.fir.txt +++ b/compiler/testData/ir/irText/expressions/kt23030.fir.txt @@ -1,5 +1,6 @@ FILE fqName: fileName:/kt23030.kt - FUN name:compareTo visibility:public modality:FINAL <> (c:kotlin.Char) returnType:kotlin.Int + FUN name:compareTo visibility:public modality:FINAL <> ($receiver:kotlin.Int, c:kotlin.Char) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:kotlin.Int VALUE_PARAMETER name:c index:0 type:kotlin.Char BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun compareTo (c: kotlin.Char): kotlin.Int declared in ' @@ -58,9 +59,10 @@ FILE fqName: fileName:/kt23030.kt BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () [primary] declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]' - FUN name:compareTo visibility:public modality:FINAL <> ($this:.C, c:kotlin.Char) returnType:kotlin.Int + FUN name:compareTo visibility:public modality:FINAL <> ($this:.C, $receiver:kotlin.Int, c:kotlin.Char) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.C - VALUE_PARAMETER name:c index:0 type:kotlin.Char + $receiver: VALUE_PARAMETER name: type:kotlin.Int + VALUE_PARAMETER name:c index:0 type:kotlin.Char BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun compareTo (c: kotlin.Char): kotlin.Int declared in .C' CONST Int type=kotlin.Int value=0 diff --git a/compiler/testData/ir/irText/expressions/kt28456.fir.txt b/compiler/testData/ir/irText/expressions/kt28456.fir.txt index 8fd09276d14..262ad976bfa 100644 --- a/compiler/testData/ir/irText/expressions/kt28456.fir.txt +++ b/compiler/testData/ir/irText/expressions/kt28456.fir.txt @@ -18,12 +18,14 @@ FILE fqName: fileName:/kt28456.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:get visibility:public modality:FINAL <> (xs:kotlin.IntArray) returnType:kotlin.Int + FUN name:get visibility:public modality:FINAL <> ($receiver:.A, xs:kotlin.IntArray) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun get (xs: kotlin.IntArray): kotlin.Int declared in ' CONST Int type=kotlin.Int value=0 - FUN name:set visibility:public modality:FINAL <> (i:kotlin.Int, j:kotlin.Int, v:kotlin.Int) returnType:kotlin.Unit + FUN name:set visibility:public modality:FINAL <> ($receiver:.A, i:kotlin.Int, j:kotlin.Int, v:kotlin.Int) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:i index:0 type:kotlin.Int VALUE_PARAMETER name:j index:1 type:kotlin.Int VALUE_PARAMETER name:v index:2 type:kotlin.Int @@ -32,6 +34,7 @@ FILE fqName: fileName:/kt28456.kt VALUE_PARAMETER name:a index:0 type:.A BLOCK_BODY CALL 'public final fun set (i: kotlin.Int, j: kotlin.Int, v: kotlin.Int): kotlin.Unit declared in ' type=kotlin.Unit origin=null + $receiver: GET_VAR 'a: .A declared in .testSimpleAssignment' type=.A origin=null i: CONST Int type=kotlin.Int value=1 j: CONST Int type=kotlin.Int value=2 v: CONST Int type=kotlin.Int value=0 @@ -45,6 +48,7 @@ FILE fqName: fileName:/kt28456.kt CONST Int type=kotlin.Int value=1 CONST Int type=kotlin.Int value=2 CALL 'public final fun set (i: kotlin.Int, j: kotlin.Int, v: kotlin.Int): kotlin.Unit declared in ' type=kotlin.Unit origin=null + $receiver: GET_VAR 'a: .A declared in .testPostfixIncrement' type=.A origin=null i: CONST Int type=kotlin.Int value=1 j: CONST Int type=kotlin.Int value=2 v: CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null diff --git a/compiler/testData/ir/irText/expressions/kt28456a.fir.txt b/compiler/testData/ir/irText/expressions/kt28456a.fir.txt index 957383839b1..9ca609a57f4 100644 --- a/compiler/testData/ir/irText/expressions/kt28456a.fir.txt +++ b/compiler/testData/ir/irText/expressions/kt28456a.fir.txt @@ -18,7 +18,8 @@ FILE fqName: fileName:/kt28456a.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:set visibility:public modality:FINAL <> (i:kotlin.IntArray, v:kotlin.Int) returnType:kotlin.Unit + FUN name:set visibility:public modality:FINAL <> ($receiver:.A, i:kotlin.IntArray, v:kotlin.Int) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:i index:0 type:kotlin.IntArray VALUE_PARAMETER name:v index:1 type:kotlin.Int BLOCK_BODY diff --git a/compiler/testData/ir/irText/expressions/kt28456b.fir.txt b/compiler/testData/ir/irText/expressions/kt28456b.fir.txt index eb1f122dfd8..b6083a29ec4 100644 --- a/compiler/testData/ir/irText/expressions/kt28456b.fir.txt +++ b/compiler/testData/ir/irText/expressions/kt28456b.fir.txt @@ -18,7 +18,8 @@ FILE fqName: fileName:/kt28456b.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:get visibility:public modality:FINAL <> (i:kotlin.Int, a:kotlin.Int, b:kotlin.Int, c:kotlin.Int, d:kotlin.Int) returnType:kotlin.Int + FUN name:get visibility:public modality:FINAL <> ($receiver:.A, i:kotlin.Int, a:kotlin.Int, b:kotlin.Int, c:kotlin.Int, d:kotlin.Int) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:i index:0 type:kotlin.Int VALUE_PARAMETER name:a index:1 type:kotlin.Int EXPRESSION_BODY @@ -35,7 +36,8 @@ FILE fqName: fileName:/kt28456b.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun get (i: kotlin.Int, a: kotlin.Int, b: kotlin.Int, c: kotlin.Int, d: kotlin.Int): kotlin.Int declared in ' CONST Int type=kotlin.Int value=0 - FUN name:set visibility:public modality:FINAL <> (i:kotlin.Int, j:kotlin.Int, v:kotlin.Int) returnType:kotlin.Unit + FUN name:set visibility:public modality:FINAL <> ($receiver:.A, i:kotlin.Int, j:kotlin.Int, v:kotlin.Int) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:i index:0 type:kotlin.Int VALUE_PARAMETER name:j index:1 type:kotlin.Int EXPRESSION_BODY @@ -55,6 +57,7 @@ FILE fqName: fileName:/kt28456b.kt BLOCK type=kotlin.Int origin=null VAR name: type:kotlin.Int [val] CALL 'public final fun get (i: kotlin.Int, a: kotlin.Int, b: kotlin.Int, c: kotlin.Int, d: kotlin.Int): kotlin.Int declared in ' type=kotlin.Int origin=null + $receiver: GET_VAR 'a: .A declared in .testPostfixIncrement' type=.A origin=null i: CONST Int type=kotlin.Int value=1 ERROR_CALL 'Unresolved reference: #' type=IrErrorType CONST Int type=kotlin.Int value=1 diff --git a/compiler/testData/ir/irText/expressions/kt30020.fir.txt b/compiler/testData/ir/irText/expressions/kt30020.fir.txt index 6a3067aab21..400d922f285 100644 --- a/compiler/testData/ir/irText/expressions/kt30020.fir.txt +++ b/compiler/testData/ir/irText/expressions/kt30020.fir.txt @@ -76,7 +76,8 @@ FILE fqName: fileName:/kt30020.kt then: GET_VAR 'val : kotlin.collections.MutableList [val] declared in .test' type=kotlin.collections.MutableList origin=null SET_VAR 'val : kotlin.collections.MutableList [val] declared in .test' type=kotlin.collections.MutableList origin=null CONST Int type=kotlin.collections.MutableList value=6 - FUN name:testExtensionReceiver visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:testExtensionReceiver visibility:public modality:FINAL <> ($receiver:kotlin.collections.MutableList) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:kotlin.collections.MutableList BLOCK_BODY ERROR_CALL 'Unresolved reference: this#' type=IrErrorType CLASS CLASS name:AML modality:ABSTRACT visibility:public superTypes:[kotlin.collections.MutableList] diff --git a/compiler/testData/ir/irText/expressions/lambdaInCAO.fir.txt b/compiler/testData/ir/irText/expressions/lambdaInCAO.fir.txt index b6fa3d3a877..0ea5c9e4f5c 100644 --- a/compiler/testData/ir/irText/expressions/lambdaInCAO.fir.txt +++ b/compiler/testData/ir/irText/expressions/lambdaInCAO.fir.txt @@ -1,13 +1,16 @@ FILE fqName: fileName:/lambdaInCAO.kt - FUN name:plusAssign visibility:public modality:FINAL <> (lambda:kotlin.Function0) returnType:kotlin.Unit + FUN name:plusAssign visibility:public modality:FINAL <> ($receiver:kotlin.Any, lambda:kotlin.Function0) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:lambda index:0 type:kotlin.Function0 BLOCK_BODY - FUN name:get visibility:public modality:FINAL <> (index:kotlin.Function0) returnType:kotlin.Int + FUN name:get visibility:public modality:FINAL <> ($receiver:kotlin.Any, index:kotlin.Function0) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:index index:0 type:kotlin.Function0 BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun get (index: kotlin.Function0): kotlin.Int declared in ' CONST Int type=kotlin.Int value=42 - FUN name:set visibility:public modality:FINAL <> (index:kotlin.Function0, value:kotlin.Int) returnType:kotlin.Unit + FUN name:set visibility:public modality:FINAL <> ($receiver:kotlin.Any, index:kotlin.Function0, value:kotlin.Int) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:index index:0 type:kotlin.Function0 VALUE_PARAMETER name:value index:1 type:kotlin.Int BLOCK_BODY @@ -24,11 +27,13 @@ FILE fqName: fileName:/lambdaInCAO.kt BLOCK_BODY VAR name: type:kotlin.Int [val] CALL 'public final fun get (index: kotlin.Function0): kotlin.Int declared in ' type=kotlin.Int origin=null + $receiver: GET_VAR 'a: kotlin.Any declared in .test3' type=kotlin.Any origin=null index: FUN_EXPR type=kotlin.Function0 origin=LAMBDA FUN LOCAL_FUNCTION_FOR_LAMBDA name: visibility:local modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit CALL 'public final fun set (index: kotlin.Function0, value: kotlin.Int): kotlin.Unit declared in ' type=kotlin.Unit origin=null + $receiver: GET_VAR 'a: kotlin.Any declared in .test3' type=kotlin.Any origin=null index: FUN_EXPR type=kotlin.Function0 origin=LAMBDA FUN LOCAL_FUNCTION_FOR_LAMBDA name: visibility:local modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY diff --git a/compiler/testData/ir/irText/expressions/membersImportedFromObject.fir.txt b/compiler/testData/ir/irText/expressions/membersImportedFromObject.fir.txt index c1a2ed8d161..978303bd5e3 100644 --- a/compiler/testData/ir/irText/expressions/membersImportedFromObject.fir.txt +++ b/compiler/testData/ir/irText/expressions/membersImportedFromObject.fir.txt @@ -10,8 +10,9 @@ FILE fqName: fileName:/membersImportedFromObject.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.Int declared in .A' CONST Int type=kotlin.Int value=1 - FUN name:fooExt visibility:public modality:FINAL <> ($this:.A) returnType:kotlin.Int + FUN name:fooExt visibility:public modality:FINAL <> ($this:.A, $receiver:kotlin.Int) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.A + $receiver: VALUE_PARAMETER name: type:kotlin.Int BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun fooExt (): kotlin.Int declared in .A' CONST Int type=kotlin.Int value=2 diff --git a/compiler/testData/ir/irText/expressions/multipleThisReferences.fir.txt b/compiler/testData/ir/irText/expressions/multipleThisReferences.fir.txt index 8ca48093158..6b295b0539b 100644 --- a/compiler/testData/ir/irText/expressions/multipleThisReferences.fir.txt +++ b/compiler/testData/ir/irText/expressions/multipleThisReferences.fir.txt @@ -67,8 +67,9 @@ FILE fqName: fileName:/multipleThisReferences.kt RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in .Host' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:y type:kotlin.Int visibility:public [final] ' type=kotlin.Int origin=null receiver: GET_VAR ': .Host declared in .Host.' type=.Host origin=null - FUN name:test visibility:public modality:FINAL <> ($this:.Host) returnType:.Outer.Inner + FUN name:test visibility:public modality:FINAL <> ($this:.Host, $receiver:.Outer) returnType:.Outer.Inner $this: VALUE_PARAMETER name: type:.Host + $receiver: VALUE_PARAMETER name: type:.Outer BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test (): .Outer.Inner declared in .Host' BLOCK type=.Host.test. origin=OBJECT_LITERAL @@ -83,6 +84,7 @@ FILE fqName: fileName:/multipleThisReferences.kt FIELD PROPERTY_BACKING_FIELD name:xx type:kotlin.String visibility:public [final] EXPRESSION_BODY CALL 'public final fun plus (other: kotlin.Any?): kotlin.String declared in kotlin' type=kotlin.String origin=null + $receiver: ERROR_CALL 'Unresolved reference: #' type=IrErrorType other: GET_VAR 'y: kotlin.Int declared in .Host.' type=kotlin.Int origin=null FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> ($this:.Host.test.) returnType:kotlin.String correspondingProperty: PROPERTY name:xx visibility:public modality:FINAL [val] diff --git a/compiler/testData/ir/irText/expressions/objectAsCallable.fir.txt b/compiler/testData/ir/irText/expressions/objectAsCallable.fir.txt index f215b5d96fa..5f12a305858 100644 --- a/compiler/testData/ir/irText/expressions/objectAsCallable.fir.txt +++ b/compiler/testData/ir/irText/expressions/objectAsCallable.fir.txt @@ -66,12 +66,14 @@ FILE fqName: fileName:/objectAsCallable.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum - FUN name:invoke visibility:public modality:FINAL <> (i:kotlin.Int) returnType:kotlin.Int + FUN name:invoke visibility:public modality:FINAL <> ($receiver:.A, i:kotlin.Int) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:i index:0 type:kotlin.Int BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun invoke (i: kotlin.Int): kotlin.Int declared in ' GET_VAR 'i: kotlin.Int declared in .invoke' type=kotlin.Int origin=null - FUN name:invoke visibility:public modality:FINAL <> (i:kotlin.Int) returnType:kotlin.Int + FUN name:invoke visibility:public modality:FINAL <> ($receiver:.En, i:kotlin.Int) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:.En VALUE_PARAMETER name:i index:0 type:kotlin.Int BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun invoke (i: kotlin.Int): kotlin.Int declared in ' diff --git a/compiler/testData/ir/irText/expressions/objectReference.fir.txt b/compiler/testData/ir/irText/expressions/objectReference.fir.txt index 4a1ece9dafe..b6b311764e7 100644 --- a/compiler/testData/ir/irText/expressions/objectReference.fir.txt +++ b/compiler/testData/ir/irText/expressions/objectReference.fir.txt @@ -146,7 +146,8 @@ FILE fqName: fileName:/objectReference.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:test visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:test visibility:public modality:FINAL <> ($receiver:.Z) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.Z BLOCK_BODY SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:counter type:kotlin.Int visibility:public ' type=kotlin.Int origin=null value: CONST Int type=kotlin.Int value=1 diff --git a/compiler/testData/ir/irText/expressions/references.fir.txt b/compiler/testData/ir/irText/expressions/references.fir.txt index a9a834e54d3..4a0391297fa 100644 --- a/compiler/testData/ir/irText/expressions/references.fir.txt +++ b/compiler/testData/ir/irText/expressions/references.fir.txt @@ -48,7 +48,8 @@ FILE fqName: fileName:/references.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun (): kotlin.String declared in ' CONST String type=kotlin.String value="OK" - FUN name:test5 visibility:public modality:FINAL <> () returnType:kotlin.String + FUN name:test5 visibility:public modality:FINAL <> ($receiver:kotlin.String) returnType:kotlin.String + $receiver: VALUE_PARAMETER name: type:kotlin.String BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test5 (): kotlin.String declared in ' CALL 'public final fun (): kotlin.String declared in ' type=kotlin.String origin=null diff --git a/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.fir.txt b/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.fir.txt index d3ec2beb9f8..d141f961236 100644 --- a/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.fir.txt +++ b/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.fir.txt @@ -28,17 +28,20 @@ FILE fqName:test fileName:/safeCallWithIncrementDecrement.kt correspondingProperty: PROPERTY name:p visibility:public modality:FINAL [var] VALUE_PARAMETER name:value index:0 type:kotlin.Int BLOCK_BODY - FUN name:inc visibility:public modality:FINAL <> () returnType:kotlin.Int? + FUN name:inc visibility:public modality:FINAL <> ($receiver:kotlin.Int?) returnType:kotlin.Int? + $receiver: VALUE_PARAMETER name: type:kotlin.Int? BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun inc (): kotlin.Int? declared in test' CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null $this: ERROR_CALL 'Unresolved reference: this#' type=kotlin.Int? - FUN name:get visibility:public modality:FINAL <> (index:kotlin.Int) returnType:kotlin.Int + FUN name:get visibility:public modality:FINAL <> ($receiver:kotlin.Int?, index:kotlin.Int) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:kotlin.Int? VALUE_PARAMETER name:index index:0 type:kotlin.Int BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun get (index: kotlin.Int): kotlin.Int declared in test' CONST Int type=kotlin.Int value=42 - FUN name:set visibility:public modality:FINAL <> (index:kotlin.Int, value:kotlin.Int) returnType:kotlin.Unit + FUN name:set visibility:public modality:FINAL <> ($receiver:kotlin.Int?, index:kotlin.Int, value:kotlin.Int) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:kotlin.Int? VALUE_PARAMETER name:index index:0 type:kotlin.Int VALUE_PARAMETER name:value index:1 type:kotlin.Int BLOCK_BODY @@ -54,8 +57,10 @@ FILE fqName:test fileName:/safeCallWithIncrementDecrement.kt BLOCK_BODY VAR name: type:kotlin.Int [val] CALL 'public final fun get (index: kotlin.Int): kotlin.Int declared in test' type=kotlin.Int origin=null + $receiver: CALL 'public final fun (): kotlin.Int declared in test' type=kotlin.Int? origin=null index: CONST Int type=kotlin.Int value=0 CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in test' type=kotlin.Unit origin=null + $receiver: CALL 'public final fun (): kotlin.Int declared in test' type=kotlin.Int? origin=null index: CONST Int type=kotlin.Int value=0 value: CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null $this: GET_VAR 'val : kotlin.Int [val] declared in test.testArrayAccess' type=kotlin.Int origin=null diff --git a/compiler/testData/ir/irText/expressions/safeCalls.fir.txt b/compiler/testData/ir/irText/expressions/safeCalls.fir.txt index 98314bbb337..5952e686683 100644 --- a/compiler/testData/ir/irText/expressions/safeCalls.fir.txt +++ b/compiler/testData/ir/irText/expressions/safeCalls.fir.txt @@ -40,8 +40,9 @@ FILE fqName: fileName:/safeCalls.kt $this: VALUE_PARAMETER name: type:kotlin.Any CLASS INTERFACE name:IHost modality:ABSTRACT visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.IHost - FUN name:extLength visibility:public modality:OPEN <> ($this:.IHost) returnType:kotlin.Int + FUN name:extLength visibility:public modality:OPEN <> ($this:.IHost, $receiver:kotlin.String) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.IHost + $receiver: VALUE_PARAMETER name: type:kotlin.String BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun extLength (): kotlin.Int declared in .IHost' ERROR_CALL 'No getter found for R|kotlin/String.length|' type=kotlin.Int @@ -82,17 +83,19 @@ FILE fqName: fileName:/safeCalls.kt BLOCK_BODY SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:value type:kotlin.Int visibility:public ' type=kotlin.Int origin=null value: CONST Int type=kotlin.Int? value=0 - FUN name:test5 visibility:public modality:FINAL <> (s:kotlin.String?) returnType:kotlin.Int + FUN name:test5 visibility:public modality:FINAL <> ($receiver:.IHost, s:kotlin.String?) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:.IHost VALUE_PARAMETER name:s index:0 type:kotlin.String? BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test5 (s: kotlin.String?): kotlin.Int declared in ' CALL 'public open fun extLength (): kotlin.Int declared in .IHost' type=kotlin.Int origin=null $this: GET_VAR 's: kotlin.String? declared in .test5' type=kotlin.String? origin=null - FUN name:foo visibility:public modality:FINAL <> () returnType:kotlin.Int + FUN name:foo visibility:public modality:FINAL <> ($receiver:kotlin.Int) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:kotlin.Int BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.Int declared in ' CONST Int type=kotlin.Int value=239 FUN name:box visibility:public modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY CALL 'public final fun foo (): kotlin.Int declared in ' type=kotlin.Int origin=null - + $receiver: CONST Int type=kotlin.Int value=42 diff --git a/compiler/testData/ir/irText/expressions/sam/samConversions.fir.txt b/compiler/testData/ir/irText/expressions/sam/samConversions.fir.txt index 84ee45240d4..b12dcd31604 100644 --- a/compiler/testData/ir/irText/expressions/sam/samConversions.fir.txt +++ b/compiler/testData/ir/irText/expressions/sam/samConversions.fir.txt @@ -1,5 +1,6 @@ FILE fqName: fileName:/samConversions.kt - FUN name:test0 visibility:public modality:FINAL <> (a:java.lang.Runnable) returnType:kotlin.Unit + FUN name:test0 visibility:public modality:FINAL <> ($receiver:.J, a:java.lang.Runnable) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.J VALUE_PARAMETER name:a index:0 type:java.lang.Runnable BLOCK_BODY CALL 'public open fun runStatic (r: java.lang.Runnable?): kotlin.Unit declared in .J' type=kotlin.Unit origin=null @@ -13,20 +14,23 @@ FILE fqName: fileName:/samConversions.kt FUN LOCAL_FUNCTION_FOR_LAMBDA name: visibility:local modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY CALL 'public final fun test1 (): kotlin.Unit declared in ' type=kotlin.Unit origin=null - FUN name:test2 visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:test2 visibility:public modality:FINAL <> ($receiver:.J) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.J BLOCK_BODY CALL 'public open fun runIt (r: java.lang.Runnable?): kotlin.Unit declared in .J' type=kotlin.Unit origin=null r: FUN_EXPR type=kotlin.Function0 origin=LAMBDA FUN LOCAL_FUNCTION_FOR_LAMBDA name: visibility:local modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY CALL 'public final fun test1 (): kotlin.Unit declared in ' type=kotlin.Unit origin=null - FUN name:test3 visibility:public modality:FINAL <> (a:kotlin.Function0) returnType:kotlin.Unit + FUN name:test3 visibility:public modality:FINAL <> ($receiver:.J, a:kotlin.Function0) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.J VALUE_PARAMETER name:a index:0 type:kotlin.Function0 BLOCK_BODY ERROR_CALL 'Unresolved reference: #' type=IrErrorType GET_VAR 'a: kotlin.Function0 declared in .test3' type=kotlin.Function0 origin=null GET_VAR 'a: kotlin.Function0 declared in .test3' type=kotlin.Function0 origin=null - FUN name:test4 visibility:public modality:FINAL <> (a:kotlin.Function0, b:kotlin.Function0, flag:kotlin.Boolean) returnType:kotlin.Unit + FUN name:test4 visibility:public modality:FINAL <> ($receiver:.J, a:kotlin.Function0, b:kotlin.Function0, flag:kotlin.Boolean) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.J VALUE_PARAMETER name:a index:0 type:kotlin.Function0 VALUE_PARAMETER name:b index:1 type:kotlin.Function0 VALUE_PARAMETER name:flag index:2 type:kotlin.Boolean diff --git a/compiler/testData/ir/irText/expressions/sam/samOperators.fir.txt b/compiler/testData/ir/irText/expressions/sam/samOperators.fir.txt index f0704c24af2..e4edfa98248 100644 --- a/compiler/testData/ir/irText/expressions/sam/samOperators.fir.txt +++ b/compiler/testData/ir/irText/expressions/sam/samOperators.fir.txt @@ -1,7 +1,8 @@ FILE fqName: fileName:/samOperators.kt FUN name:f visibility:public modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY - FUN name:test1 visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:test1 visibility:public modality:FINAL <> ($receiver:.J) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.J BLOCK_BODY CALL 'public open fun get (k: java.lang.Runnable?): kotlin.Unit declared in .J' type=kotlin.Unit origin=null $this: ERROR_CALL 'Unresolved reference: this#' type=.J @@ -10,7 +11,8 @@ FILE fqName: fileName:/samOperators.kt $this: ERROR_CALL 'Unresolved reference: this#' type=.J k: ERROR_CALL 'Unresolved reference: #' type=IrErrorType m: ERROR_CALL 'Unresolved reference: #' type=IrErrorType - FUN name:test2 visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:test2 visibility:public modality:FINAL <> ($receiver:.J) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.J BLOCK_BODY CALL 'public open fun set (k: java.lang.Runnable?, v: java.lang.Runnable?): kotlin.Unit declared in .J' type=kotlin.Unit origin=null $this: ERROR_CALL 'Unresolved reference: this#' type=.J @@ -21,7 +23,8 @@ FILE fqName: fileName:/samOperators.kt k: ERROR_CALL 'Unresolved reference: #' type=IrErrorType m: ERROR_CALL 'Unresolved reference: #' type=IrErrorType v: ERROR_CALL 'Unresolved reference: #' type=IrErrorType - FUN name:test3 visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:test3 visibility:public modality:FINAL <> ($receiver:.J) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.J BLOCK_BODY ERROR_CALL 'Unresolved reference: this#' type=IrErrorType ERROR_CALL 'Unresolved reference: this#' type=IrErrorType diff --git a/compiler/testData/ir/irText/expressions/smartCastsWithDestructuring.fir.txt b/compiler/testData/ir/irText/expressions/smartCastsWithDestructuring.fir.txt index ac3b89bf6d0..9d486a9f703 100644 --- a/compiler/testData/ir/irText/expressions/smartCastsWithDestructuring.fir.txt +++ b/compiler/testData/ir/irText/expressions/smartCastsWithDestructuring.fir.txt @@ -29,11 +29,13 @@ FILE fqName: fileName:/smartCastsWithDestructuring.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:component1 visibility:public modality:FINAL <> () returnType:kotlin.Int + FUN name:component1 visibility:public modality:FINAL <> ($receiver:.I1) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:.I1 BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun component1 (): kotlin.Int declared in ' CONST Int type=kotlin.Int value=1 - FUN name:component2 visibility:public modality:FINAL <> () returnType:kotlin.String + FUN name:component2 visibility:public modality:FINAL <> ($receiver:.I2) returnType:kotlin.String + $receiver: VALUE_PARAMETER name: type:.I2 BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun component2 (): kotlin.String declared in ' CONST String type=kotlin.String value="" @@ -50,6 +52,7 @@ FILE fqName: fileName:/smartCastsWithDestructuring.kt GET_VAR 'x: .I1 declared in .test' type=.I1 origin=null VAR name:c1 type:kotlin.Int [val] CALL 'public final fun component1 (): kotlin.Int declared in ' type=kotlin.Int origin=null - VAR name:c2 type:IrErrorType [val] + $receiver: GET_VAR 'val : .I1 [val] declared in .test' type=.I1 origin=null + VAR name:c2 type:IrErrorType [val] ERROR_CALL 'Unresolved reference: #' type=IrErrorType diff --git a/compiler/testData/ir/irText/expressions/thisOfGenericOuterClass.fir.txt b/compiler/testData/ir/irText/expressions/thisOfGenericOuterClass.fir.txt index 8117ddbef2e..5c693e0997b 100644 --- a/compiler/testData/ir/irText/expressions/thisOfGenericOuterClass.fir.txt +++ b/compiler/testData/ir/irText/expressions/thisOfGenericOuterClass.fir.txt @@ -62,7 +62,8 @@ FILE fqName: fileName:/thisOfGenericOuterClass.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:test visibility:public modality:FINAL <> () returnType:.Outer.Inner + FUN name:test visibility:public modality:FINAL <> ($receiver:.Outer) returnType:.Outer.Inner + $receiver: VALUE_PARAMETER name: type:.Outer BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test (): .Outer.Inner declared in ' BLOCK type=.test. origin=OBJECT_LITERAL diff --git a/compiler/testData/ir/irText/expressions/thisReferenceBeforeClassDeclared.fir.txt b/compiler/testData/ir/irText/expressions/thisReferenceBeforeClassDeclared.fir.txt index ee7ba356234..473ead3e7e3 100644 --- a/compiler/testData/ir/irText/expressions/thisReferenceBeforeClassDeclared.fir.txt +++ b/compiler/testData/ir/irText/expressions/thisReferenceBeforeClassDeclared.fir.txt @@ -1,5 +1,6 @@ FILE fqName: fileName:/thisReferenceBeforeClassDeclared.kt - FUN name:test visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:test visibility:public modality:FINAL <> ($receiver:.WithCompanion) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.WithCompanion BLOCK_BODY VAR name:test1 type:.WithCompanion [val] BLOCK type=.test. origin=OBJECT_LITERAL diff --git a/compiler/testData/ir/irText/expressions/typeParameterClassLiteral.fir.txt b/compiler/testData/ir/irText/expressions/typeParameterClassLiteral.fir.txt index 69c1d098ff2..bf322eaf8fe 100644 --- a/compiler/testData/ir/irText/expressions/typeParameterClassLiteral.fir.txt +++ b/compiler/testData/ir/irText/expressions/typeParameterClassLiteral.fir.txt @@ -5,8 +5,9 @@ FILE fqName: fileName:/typeParameterClassLiteral.kt RETURN type=kotlin.Nothing from='public final fun classRefFun (): kotlin.reflect.KClass [inline] declared in ' GET_CLASS type=kotlin.reflect.KClass ERROR_CALL 'Unresolved reference: #' type=IrErrorType - FUN name:classRefExtFun visibility:public modality:FINAL () returnType:kotlin.reflect.KClass [inline] + FUN name:classRefExtFun visibility:public modality:FINAL ($receiver:kotlin.Any) returnType:kotlin.reflect.KClass [inline] TYPE_PARAMETER name:T index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun classRefExtFun (): kotlin.reflect.KClass [inline] declared in ' GET_CLASS type=kotlin.reflect.KClass @@ -31,9 +32,10 @@ FILE fqName: fileName:/typeParameterClassLiteral.kt RETURN type=kotlin.Nothing from='public final fun classRefGenericMemberFun (): kotlin.reflect.KClass [inline] declared in .Host' GET_CLASS type=kotlin.reflect.KClass ERROR_CALL 'Unresolved reference: #' type=IrErrorType - FUN name:classRefGenericMemberExtFun visibility:public modality:FINAL ($this:.Host) returnType:kotlin.reflect.KClass [inline] + FUN name:classRefGenericMemberExtFun visibility:public modality:FINAL ($this:.Host, $receiver:kotlin.Any) returnType:kotlin.reflect.KClass [inline] TYPE_PARAMETER name:TF index:0 variance: superTypes:[] $this: VALUE_PARAMETER name: type:.Host + $receiver: VALUE_PARAMETER name: type:kotlin.Any BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun classRefGenericMemberExtFun (): kotlin.reflect.KClass [inline] declared in .Host' GET_CLASS type=kotlin.reflect.KClass diff --git a/compiler/testData/ir/irText/expressions/unsignedIntegerLiterals.fir.txt b/compiler/testData/ir/irText/expressions/unsignedIntegerLiterals.fir.txt index 2342639c789..0b515db52c3 100644 --- a/compiler/testData/ir/irText/expressions/unsignedIntegerLiterals.fir.txt +++ b/compiler/testData/ir/irText/expressions/unsignedIntegerLiterals.fir.txt @@ -57,7 +57,8 @@ FILE fqName: fileName:/unsignedIntegerLiterals.kt FIELD PROPERTY_BACKING_FIELD name:testToUByte type:kotlin.UByte visibility:public [final,static] EXPRESSION_BODY CALL 'public final fun toUByte (): kotlin.UByte [inline] declared in kotlin' type=kotlin.UByte origin=null - FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:kotlin.UByte + $receiver: CONST Int type=kotlin.Int value=1 + FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:kotlin.UByte correspondingProperty: PROPERTY name:testToUByte visibility:public modality:FINAL [val] BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun (): kotlin.UByte declared in ' @@ -66,7 +67,8 @@ FILE fqName: fileName:/unsignedIntegerLiterals.kt FIELD PROPERTY_BACKING_FIELD name:testToUShort type:kotlin.UShort visibility:public [final,static] EXPRESSION_BODY CALL 'public final fun toUShort (): kotlin.UShort [inline] declared in kotlin' type=kotlin.UShort origin=null - FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:kotlin.UShort + $receiver: CONST Int type=kotlin.Int value=1 + FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:kotlin.UShort correspondingProperty: PROPERTY name:testToUShort visibility:public modality:FINAL [val] BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun (): kotlin.UShort declared in ' @@ -75,7 +77,8 @@ FILE fqName: fileName:/unsignedIntegerLiterals.kt FIELD PROPERTY_BACKING_FIELD name:testToUInt type:kotlin.UInt visibility:public [final,static] EXPRESSION_BODY CALL 'public final fun toUInt (): kotlin.UInt [inline] declared in kotlin' type=kotlin.UInt origin=null - FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:kotlin.UInt + $receiver: CONST Int type=kotlin.Int value=1 + FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:kotlin.UInt correspondingProperty: PROPERTY name:testToUInt visibility:public modality:FINAL [val] BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun (): kotlin.UInt declared in ' @@ -84,7 +87,8 @@ FILE fqName: fileName:/unsignedIntegerLiterals.kt FIELD PROPERTY_BACKING_FIELD name:testToULong type:kotlin.ULong visibility:public [final,static] EXPRESSION_BODY CALL 'public final fun toULong (): kotlin.ULong [inline] declared in kotlin' type=kotlin.ULong origin=null - FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:kotlin.ULong + $receiver: CONST Int type=kotlin.Int value=1 + FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:kotlin.ULong correspondingProperty: PROPERTY name:testToULong visibility:public modality:FINAL [val] BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun (): kotlin.ULong declared in ' diff --git a/compiler/testData/ir/irText/expressions/useImportedMember.fir.txt b/compiler/testData/ir/irText/expressions/useImportedMember.fir.txt index b6beeac7ee3..7a7241d2d5e 100644 --- a/compiler/testData/ir/irText/expressions/useImportedMember.fir.txt +++ b/compiler/testData/ir/irText/expressions/useImportedMember.fir.txt @@ -2,9 +2,10 @@ FILE fqName: fileName:/useImportedMember.kt CLASS INTERFACE name:I modality:ABSTRACT visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.I TYPE_PARAMETER name:G index:0 variance: superTypes:[] - FUN name:fromInterface visibility:public modality:OPEN ($this:.I) returnType:T of .I.fromInterface + FUN name:fromInterface visibility:public modality:OPEN ($this:.I, $receiver:T of .I.fromInterface) returnType:T of .I.fromInterface TYPE_PARAMETER name:T index:0 variance: superTypes:[] $this: VALUE_PARAMETER name: type:.I + $receiver: VALUE_PARAMETER name: type:T of .I.fromInterface BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun fromInterface (): T of .I.fromInterface declared in .I' ERROR_CALL 'Unresolved reference: this#' type=T of .I.fromInterface @@ -71,8 +72,9 @@ FILE fqName: fileName:/useImportedMember.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun f (s: kotlin.String): kotlin.Int declared in .C' CONST Int type=kotlin.Int value=2 - FUN name:f visibility:public modality:FINAL <> ($this:.C) returnType:kotlin.Int + FUN name:f visibility:public modality:FINAL <> ($this:.C, $receiver:kotlin.Boolean) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.C + $receiver: VALUE_PARAMETER name: type:kotlin.Boolean BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun f (): kotlin.Int declared in .C' CONST Int type=kotlin.Int value=3 @@ -129,11 +131,12 @@ FILE fqName: fileName:/useImportedMember.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN FAKE_OVERRIDE name:fromInterface visibility:public modality:OPEN <> ($this:.I) returnType:T of .I.fromInterface + FUN FAKE_OVERRIDE name:fromInterface visibility:public modality:OPEN <> ($this:.I, $receiver:T of .I.fromInterface) returnType:T of .I.fromInterface overridden: public open fun fromInterface (): T of .I.fromInterface declared in .I $this: VALUE_PARAMETER name: type:.I - FUN FAKE_OVERRIDE name:genericFromSuper visibility:public modality:OPEN <> ($this:.I, g:kotlin.String) returnType:kotlin.String + $receiver: VALUE_PARAMETER name: type:T of .I.fromInterface + FUN FAKE_OVERRIDE name:genericFromSuper visibility:public modality:OPEN <> ($this:.I, g:kotlin.String) returnType:kotlin.String overridden: public open fun genericFromSuper (g: G of .I): G of .I declared in .I $this: VALUE_PARAMETER name: type:.I diff --git a/compiler/testData/ir/irText/expressions/variableAsFunctionCall.fir.txt b/compiler/testData/ir/irText/expressions/variableAsFunctionCall.fir.txt index 5eb0b62d01b..b5b730e8ceb 100644 --- a/compiler/testData/ir/irText/expressions/variableAsFunctionCall.fir.txt +++ b/compiler/testData/ir/irText/expressions/variableAsFunctionCall.fir.txt @@ -1,5 +1,6 @@ FILE fqName: fileName:/variableAsFunctionCall.kt - FUN name:k visibility:public modality:FINAL <> () returnType:kotlin.Function0 + FUN name:k visibility:public modality:FINAL <> ($receiver:kotlin.String) returnType:kotlin.Function0 + $receiver: VALUE_PARAMETER name: type:kotlin.String BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun k (): kotlin.Function0 declared in ' FUN_EXPR type=kotlin.Function1, kotlin.Function0> origin=LAMBDA @@ -22,9 +23,11 @@ FILE fqName: fileName:/variableAsFunctionCall.kt RETURN type=kotlin.Nothing from='public final fun test3 (): IrErrorType declared in ' ERROR_CALL 'Unresolved reference: #' type=IrErrorType CALL 'public final fun k (): kotlin.Function0 declared in ' type=kotlin.Function0 origin=null + $receiver: CONST String type=kotlin.String value="hello" FUN name:test4 visibility:public modality:FINAL <> (ns:kotlin.String?) returnType:kotlin.String VALUE_PARAMETER name:ns index:0 type:kotlin.String? BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test4 (ns: kotlin.String?): kotlin.String declared in ' CALL 'public abstract fun invoke (): kotlin.String declared in kotlin.Function0' type=kotlin.String origin=null $this: CALL 'public final fun k (): kotlin.Function0 declared in ' type=kotlin.Function0 origin=null + $receiver: GET_VAR 'ns: kotlin.String? declared in .test4' type=kotlin.String? origin=null diff --git a/compiler/testData/ir/irText/expressions/when.fir.txt b/compiler/testData/ir/irText/expressions/when.fir.txt index 2ce086275b1..b073325dac2 100644 --- a/compiler/testData/ir/irText/expressions/when.fir.txt +++ b/compiler/testData/ir/irText/expressions/when.fir.txt @@ -45,6 +45,7 @@ FILE fqName: fileName:/when.kt then: CONST String type=kotlin.String value="!Number" BRANCH if: CALL 'public final fun contains (element: T of ): kotlin.Boolean declared in kotlin.collections' type=kotlin.Boolean origin=null + $receiver: CALL 'public final fun setOf (): kotlin.collections.Set> [inline] declared in kotlin.collections' type=kotlin.collections.Set origin=null element: GET_VAR 'val tmp0_subject: kotlin.Any? [val] declared in .testWithSubject' type=kotlin.Any? origin=null then: CONST String type=kotlin.String value="nothingness?" BRANCH @@ -75,6 +76,7 @@ FILE fqName: fileName:/when.kt then: CONST String type=kotlin.String value="!Number" BRANCH if: CALL 'public final fun contains (element: T of ): kotlin.Boolean declared in kotlin.collections' type=kotlin.Boolean origin=null + $receiver: CALL 'public final fun setOf (): kotlin.collections.Set> [inline] declared in kotlin.collections' type=kotlin.collections.Set origin=null element: GET_VAR 'x: kotlin.Any? declared in .test' type=kotlin.Any? origin=null then: CONST String type=kotlin.String value="nothingness?" BRANCH diff --git a/compiler/testData/ir/irText/lambdas/extensionLambda.fir.txt b/compiler/testData/ir/irText/lambdas/extensionLambda.fir.txt index 47f99511164..c4841497929 100644 --- a/compiler/testData/ir/irText/lambdas/extensionLambda.fir.txt +++ b/compiler/testData/ir/irText/lambdas/extensionLambda.fir.txt @@ -3,6 +3,7 @@ FILE fqName: fileName:/extensionLambda.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun test1 (): kotlin.Int declared in ' CALL 'public final fun run (block: kotlin.Function1, R of >): R of [inline] declared in kotlin' type=kotlin.Int origin=null + $receiver: CONST String type=kotlin.String value="42" block: FUN_EXPR type=kotlin.Function2 origin=LAMBDA FUN LOCAL_FUNCTION_FOR_LAMBDA name: visibility:local modality:FINAL <> (it:kotlin.String) returnType:kotlin.Int VALUE_PARAMETER name:it index:0 type:kotlin.String diff --git a/compiler/testData/ir/irText/lambdas/multipleImplicitReceivers.fir.txt b/compiler/testData/ir/irText/lambdas/multipleImplicitReceivers.fir.txt index 9f7c6153cda..add964f6f2c 100644 --- a/compiler/testData/ir/irText/lambdas/multipleImplicitReceivers.fir.txt +++ b/compiler/testData/ir/irText/lambdas/multipleImplicitReceivers.fir.txt @@ -61,8 +61,9 @@ FILE fqName: fileName:/multipleImplicitReceivers.kt $this: VALUE_PARAMETER name: type:kotlin.Any CLASS INTERFACE name:IInvoke modality:ABSTRACT visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.IInvoke - FUN name:invoke visibility:public modality:OPEN <> ($this:.IInvoke) returnType:kotlin.Int + FUN name:invoke visibility:public modality:OPEN <> ($this:.IInvoke, $receiver:.B) returnType:kotlin.Int $this: VALUE_PARAMETER name: type:.IInvoke + $receiver: VALUE_PARAMETER name: type:.B BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun invoke (): kotlin.Int declared in .IInvoke' CONST Int type=kotlin.Int value=42 diff --git a/compiler/testData/ir/irText/lambdas/nonLocalReturn.fir.txt b/compiler/testData/ir/irText/lambdas/nonLocalReturn.fir.txt index c158fc24a8a..c60dfad6e37 100644 --- a/compiler/testData/ir/irText/lambdas/nonLocalReturn.fir.txt +++ b/compiler/testData/ir/irText/lambdas/nonLocalReturn.fir.txt @@ -39,6 +39,7 @@ FILE fqName: fileName:/nonLocalReturn.kt VALUE_PARAMETER name:ints index:0 type:kotlin.collections.List BLOCK_BODY CALL 'public final fun forEach (action: kotlin.Function1, kotlin.Unit>): kotlin.Unit [inline] declared in kotlin.collections' type=kotlin.Unit origin=null + $receiver: GET_VAR 'ints: kotlin.collections.List declared in .testLrmFoo1' type=kotlin.collections.List origin=null action: FUN_EXPR type=kotlin.Function1 origin=LAMBDA FUN LOCAL_FUNCTION_FOR_LAMBDA name: visibility:local modality:FINAL <> (it:kotlin.Int) returnType:kotlin.Unit VALUE_PARAMETER name:it index:0 type:kotlin.Int @@ -56,6 +57,7 @@ FILE fqName: fileName:/nonLocalReturn.kt VALUE_PARAMETER name:ints index:0 type:kotlin.collections.List BLOCK_BODY CALL 'public final fun forEach (action: kotlin.Function1, kotlin.Unit>): kotlin.Unit [inline] declared in kotlin.collections' type=kotlin.Unit origin=null + $receiver: GET_VAR 'ints: kotlin.collections.List declared in .testLrmFoo2' type=kotlin.collections.List origin=null action: FUN_EXPR type=kotlin.Function1 origin=LAMBDA FUN LOCAL_FUNCTION_FOR_LAMBDA name: visibility:local modality:FINAL <> (it:kotlin.Int) returnType:kotlin.Unit VALUE_PARAMETER name:it index:0 type:kotlin.Int diff --git a/compiler/testData/ir/irText/regressions/integerCoercionToT.fir.txt b/compiler/testData/ir/irText/regressions/integerCoercionToT.fir.txt index ffb8e3d92b3..fbd48b23dc0 100644 --- a/compiler/testData/ir/irText/regressions/integerCoercionToT.fir.txt +++ b/compiler/testData/ir/irText/regressions/integerCoercionToT.fir.txt @@ -14,8 +14,9 @@ FILE fqName: fileName:/integerCoercionToT.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:reinterpret visibility:public modality:FINAL () returnType:T of .reinterpret [inline] + FUN name:reinterpret visibility:public modality:FINAL ($receiver:.CPointed) returnType:T of .reinterpret [inline] TYPE_PARAMETER name:T index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:.CPointed BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun reinterpret (): T of .reinterpret [inline] declared in ' CALL 'public final fun TODO (): kotlin.Nothing [inline] declared in kotlin' type=kotlin.Nothing origin=null diff --git a/compiler/testData/ir/irText/stubs/builtinMap.fir.txt b/compiler/testData/ir/irText/stubs/builtinMap.fir.txt index b3509da1cf8..e293ae357a2 100644 --- a/compiler/testData/ir/irText/stubs/builtinMap.fir.txt +++ b/compiler/testData/ir/irText/stubs/builtinMap.fir.txt @@ -1,8 +1,9 @@ FILE fqName: fileName:/builtinMap.kt - FUN name:plus visibility:public modality:FINAL (pair:kotlin.Pair.plus, V1 of .plus>) returnType:kotlin.collections.Map.plus, V1 of .plus> + FUN name:plus visibility:public modality:FINAL ($receiver:kotlin.collections.Map.plus, V1 of .plus>, pair:kotlin.Pair.plus, V1 of .plus>) returnType:kotlin.collections.Map.plus, V1 of .plus> TYPE_PARAMETER name:K1 index:0 variance: superTypes:[] TYPE_PARAMETER name:V1 index:0 variance: superTypes:[] - VALUE_PARAMETER name:pair index:0 type:kotlin.Pair.plus, V1 of .plus> + $receiver: VALUE_PARAMETER name: type:kotlin.collections.Map.plus, V1 of .plus> + VALUE_PARAMETER name:pair index:0 type:kotlin.Pair.plus, V1 of .plus> BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun plus (pair: kotlin.Pair.plus, V1 of .plus>): kotlin.collections.Map.plus, V1 of .plus> declared in ' WHEN type=kotlin.collections.Map.plus, V1 of .plus> origin=IF @@ -14,6 +15,10 @@ FILE fqName: fileName:/builtinMap.kt BRANCH if: CONST Boolean type=kotlin.Boolean value=true then: CALL 'public final fun apply (block: kotlin.Function1, kotlin.Unit>): T of [inline] declared in kotlin' type=java.util.LinkedHashMap.plus, V1 of .plus> origin=null + $receiver: CONSTRUCTOR_CALL 'public constructor (: kotlin.collections.Map?) declared in java.util.LinkedHashMap' type=java.util.LinkedHashMap.plus, V1 of .plus> origin=null + : + : + : ERROR_CALL 'Unresolved reference: this#' type=kotlin.collections.Map.plus, V1 of .plus> block: FUN_EXPR type=kotlin.Function2.plus, V1 of .plus>, java.util.LinkedHashMap.plus, V1 of .plus>, kotlin.Unit> origin=LAMBDA FUN LOCAL_FUNCTION_FOR_LAMBDA name: visibility:local modality:FINAL <> (it:java.util.LinkedHashMap.plus, V1 of .plus>) returnType:kotlin.Unit VALUE_PARAMETER name:it index:0 type:java.util.LinkedHashMap.plus, V1 of .plus> diff --git a/compiler/testData/ir/irText/types/asOnPlatformType.fir.txt b/compiler/testData/ir/irText/types/asOnPlatformType.fir.txt index b89d778a113..d7b37e0e0d6 100644 --- a/compiler/testData/ir/irText/types/asOnPlatformType.fir.txt +++ b/compiler/testData/ir/irText/types/asOnPlatformType.fir.txt @@ -6,17 +6,23 @@ FILE fqName: fileName:/asOnPlatformType.kt VAR name:nonnullStr type:kotlin.String? [val] CALL 'public open fun nonnullString (): kotlin.String? declared in .JavaClass' type=kotlin.String? origin=null CALL 'public final fun foo (): T of .foo [inline] declared in ' type=kotlin.String? origin=null + $receiver: GET_VAR 'val nullStr: kotlin.String? [val] declared in .test' type=kotlin.String? origin=null CALL 'public final fun foo (): T of .foo [inline] declared in ' type=kotlin.String? origin=null + $receiver: GET_VAR 'val nonnullStr: kotlin.String? [val] declared in .test' type=kotlin.String? origin=null CALL 'public final fun fooN (): T of .fooN? [inline] declared in ' type=kotlin.String? origin=null + $receiver: GET_VAR 'val nullStr: kotlin.String? [val] declared in .test' type=kotlin.String? origin=null CALL 'public final fun fooN (): T of .fooN? [inline] declared in ' type=kotlin.String? origin=null - FUN name:foo visibility:public modality:FINAL () returnType:T of .foo [inline] + $receiver: GET_VAR 'val nonnullStr: kotlin.String? [val] declared in .test' type=kotlin.String? origin=null + FUN name:foo visibility:public modality:FINAL ($receiver:T of .foo) returnType:T of .foo [inline] TYPE_PARAMETER name:T index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:T of .foo BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun foo (): T of .foo [inline] declared in ' TYPE_OP type=T of .foo origin=CAST typeOperand=T of .foo ERROR_CALL 'Unresolved reference: this#' type=T of .foo - FUN name:fooN visibility:public modality:FINAL () returnType:T of .fooN? [inline] + FUN name:fooN visibility:public modality:FINAL ($receiver:T of .fooN) returnType:T of .fooN? [inline] TYPE_PARAMETER name:T index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:T of .fooN BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun fooN (): T of .fooN? [inline] declared in ' TYPE_OP type=T of .fooN? origin=CAST typeOperand=T of .fooN? diff --git a/compiler/testData/ir/irText/types/explicitEqualsAndCompareToCallsOnPlatformTypeReceiver.fir.txt b/compiler/testData/ir/irText/types/explicitEqualsAndCompareToCallsOnPlatformTypeReceiver.fir.txt index 1c39dbf83e9..f92d7c53bb8 100644 --- a/compiler/testData/ir/irText/types/explicitEqualsAndCompareToCallsOnPlatformTypeReceiver.fir.txt +++ b/compiler/testData/ir/irText/types/explicitEqualsAndCompareToCallsOnPlatformTypeReceiver.fir.txt @@ -1,35 +1,41 @@ FILE fqName: fileName:/explicitEqualsAndCompareToCallsOnPlatformTypeReceiver.kt - FUN name:testPlatformEqualsPlatform visibility:public modality:FINAL <> () returnType:kotlin.Boolean + FUN name:testPlatformEqualsPlatform visibility:public modality:FINAL <> ($receiver:.JavaClass) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:.JavaClass BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun testPlatformEqualsPlatform (): kotlin.Boolean declared in ' CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any' type=kotlin.Boolean origin=null $this: CALL 'public open fun null0 (): kotlin.Double? declared in .JavaClass' type=kotlin.Double? origin=null other: CALL 'public open fun null0 (): kotlin.Double? declared in .JavaClass' type=kotlin.Double? origin=null - FUN name:testPlatformEqualsKotlin visibility:public modality:FINAL <> () returnType:kotlin.Boolean + FUN name:testPlatformEqualsKotlin visibility:public modality:FINAL <> ($receiver:.JavaClass) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:.JavaClass BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun testPlatformEqualsKotlin (): kotlin.Boolean declared in ' CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any' type=kotlin.Boolean origin=null $this: CALL 'public open fun null0 (): kotlin.Double? declared in .JavaClass' type=kotlin.Double? origin=null other: CONST Double type=kotlin.Double value=0.0 - FUN name:testKotlinEqualsPlatform visibility:public modality:FINAL <> () returnType:kotlin.Boolean + FUN name:testKotlinEqualsPlatform visibility:public modality:FINAL <> ($receiver:.JavaClass) returnType:kotlin.Boolean + $receiver: VALUE_PARAMETER name: type:.JavaClass BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun testKotlinEqualsPlatform (): kotlin.Boolean declared in ' CALL 'public open fun equals (other: kotlin.Any?): kotlin.Boolean 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? declared in .JavaClass' type=kotlin.Double? origin=null - FUN name:testPlatformCompareToPlatform visibility:public modality:FINAL <> () returnType:kotlin.Int + FUN name:testPlatformCompareToPlatform visibility:public modality:FINAL <> ($receiver:.JavaClass) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:.JavaClass BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun testPlatformCompareToPlatform (): kotlin.Int declared in ' CALL 'public open fun compareTo (other: kotlin.Double): kotlin.Int declared in kotlin.Double' type=kotlin.Int origin=null $this: CALL 'public open fun null0 (): kotlin.Double? declared in .JavaClass' type=kotlin.Double? origin=null other: CALL 'public open fun null0 (): kotlin.Double? declared in .JavaClass' type=kotlin.Double? origin=null - FUN name:testPlatformCompareToKotlin visibility:public modality:FINAL <> () returnType:kotlin.Int + FUN name:testPlatformCompareToKotlin visibility:public modality:FINAL <> ($receiver:.JavaClass) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:.JavaClass BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun testPlatformCompareToKotlin (): kotlin.Int declared in ' CALL 'public open fun compareTo (other: kotlin.Double): kotlin.Int declared in kotlin.Double' type=kotlin.Int origin=null $this: CALL 'public open fun null0 (): kotlin.Double? declared in .JavaClass' type=kotlin.Double? origin=null other: CONST Double type=kotlin.Double value=0.0 - FUN name:testKotlinCompareToPlatform visibility:public modality:FINAL <> () returnType:kotlin.Int + FUN name:testKotlinCompareToPlatform visibility:public modality:FINAL <> ($receiver:.JavaClass) returnType:kotlin.Int + $receiver: VALUE_PARAMETER name: type:.JavaClass BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun testKotlinCompareToPlatform (): kotlin.Int declared in ' CALL 'public open fun compareTo (other: kotlin.Double): kotlin.Int declared in kotlin.Double' type=kotlin.Int origin=null diff --git a/compiler/testData/ir/irText/types/intersectionType1_NI.fir.txt b/compiler/testData/ir/irText/types/intersectionType1_NI.fir.txt index 4192cfd7441..2e6e799ab03 100644 --- a/compiler/testData/ir/irText/types/intersectionType1_NI.fir.txt +++ b/compiler/testData/ir/irText/types/intersectionType1_NI.fir.txt @@ -33,10 +33,17 @@ FILE fqName: fileName:/intersectionType1_NI.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun foo (a: kotlin.Array<.In.foo>>, b: kotlin.Array<.In>): kotlin.Boolean declared in ' CALL 'public final fun ofType (y: kotlin.Any?): kotlin.Boolean [inline] declared in ' type=kotlin.Boolean origin=null + $receiver: CALL 'public final fun get (index: kotlin.Int): .In.foo> declared in kotlin.Array' type=.In.foo> origin=null + $this: CALL 'public final fun select (x: S of .select, y: S of .select): S of .select declared in ' type=kotlin.Array<.In.foo>> origin=null + : + x: GET_VAR 'a: kotlin.Array<.In.foo>> declared in .foo' type=kotlin.Array<.In.foo>> origin=null + y: GET_VAR 'b: kotlin.Array<.In> declared in .foo' type=kotlin.Array<.In> origin=null + index: CONST Int type=kotlin.Int value=0 y: CONST Boolean type=kotlin.Boolean value=true - FUN name:ofType visibility:public modality:FINAL (y:kotlin.Any?) returnType:kotlin.Boolean [inline] + FUN name:ofType visibility:public modality:FINAL ($receiver:.In.ofType>, y:kotlin.Any?) returnType:kotlin.Boolean [inline] TYPE_PARAMETER name:K index:0 variance: superTypes:[] - VALUE_PARAMETER name:y index:0 type:kotlin.Any? + $receiver: VALUE_PARAMETER name: type:.In.ofType> + VALUE_PARAMETER name:y index:0 type:kotlin.Any? BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun ofType (y: kotlin.Any?): kotlin.Boolean [inline] declared in ' TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=K of .ofType diff --git a/compiler/testData/ir/irText/types/intersectionType1_OI.fir.txt b/compiler/testData/ir/irText/types/intersectionType1_OI.fir.txt index 0eeb95e4b23..939eafa058f 100644 --- a/compiler/testData/ir/irText/types/intersectionType1_OI.fir.txt +++ b/compiler/testData/ir/irText/types/intersectionType1_OI.fir.txt @@ -33,9 +33,16 @@ FILE fqName: fileName:/intersectionType1_OI.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun foo (a: kotlin.Array<.In.foo>>, b: kotlin.Array<.In>): kotlin.Boolean declared in ' CALL 'public final fun ofType (y: kotlin.Any?): kotlin.Boolean [inline] declared in ' type=kotlin.Boolean origin=null + $receiver: CALL 'public final fun get (index: kotlin.Int): .In.foo> declared in kotlin.Array' type=.In.foo> origin=null + $this: CALL 'public final fun select (x: S of .select, y: S of .select): S of .select declared in ' type=kotlin.Array<.In.foo>> origin=null + : + x: GET_VAR 'a: kotlin.Array<.In.foo>> declared in .foo' type=kotlin.Array<.In.foo>> origin=null + y: GET_VAR 'b: kotlin.Array<.In> declared in .foo' type=kotlin.Array<.In> origin=null + index: CONST Int type=kotlin.Int value=0 y: CONST Boolean type=kotlin.Boolean value=true - FUN name:ofType visibility:public modality:FINAL (y:kotlin.Any?) returnType:kotlin.Boolean [inline] + FUN name:ofType visibility:public modality:FINAL ($receiver:.In.ofType>, y:kotlin.Any?) returnType:kotlin.Boolean [inline] TYPE_PARAMETER name:K index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:.In.ofType> VALUE_PARAMETER name:y index:0 type:kotlin.Any? BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun ofType (y: kotlin.Any?): kotlin.Boolean [inline] declared in ' diff --git a/compiler/testData/ir/irText/types/intersectionType3_NI.fir.txt b/compiler/testData/ir/irText/types/intersectionType3_NI.fir.txt index f11637e06ab..8a757a92611 100644 --- a/compiler/testData/ir/irText/types/intersectionType3_NI.fir.txt +++ b/compiler/testData/ir/irText/types/intersectionType3_NI.fir.txt @@ -15,14 +15,16 @@ FILE fqName: fileName:/intersectionType3_NI.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:isT visibility:public modality:FINAL () returnType:kotlin.Boolean [inline] + FUN name:isT visibility:public modality:FINAL ($receiver:.In.isT>) returnType:kotlin.Boolean [inline] TYPE_PARAMETER name:T index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:.In.isT> BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun isT (): kotlin.Boolean [inline] declared in ' TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=T of .isT ERROR_CALL 'Unresolved reference: this#' type=.In.isT> - FUN name:asT visibility:public modality:FINAL () returnType:kotlin.Unit [inline] + FUN name:asT visibility:public modality:FINAL ($receiver:.In.asT>) returnType:kotlin.Unit [inline] TYPE_PARAMETER name:T index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:.In.asT> BLOCK_BODY TYPE_OP type=T of .asT origin=CAST typeOperand=T of .asT ERROR_CALL 'Unresolved reference: this#' type=.In.asT> @@ -130,39 +132,62 @@ FILE fqName: fileName:/intersectionType3_NI.kt RETURN type=kotlin.Nothing from='public final fun testInIs1 (x: .In<.A>, y: .In<.B>): kotlin.Boolean declared in ' CALL 'public final fun isT (): kotlin.Boolean [inline] declared in ' type=kotlin.Boolean origin=null : - FUN name:testInIs2 visibility:public modality:FINAL <> (x:.In<.Z1>, y:.In<.Z2>) returnType:kotlin.Boolean + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.A> origin=null + : + x: GET_VAR 'x: .In<.A> declared in .testInIs1' type=.In<.A> origin=null + y: GET_VAR 'y: .In<.B> declared in .testInIs1' type=.In<.B> origin=null + FUN name:testInIs2 visibility:public modality:FINAL <> (x:.In<.Z1>, y:.In<.Z2>) returnType:kotlin.Boolean VALUE_PARAMETER name:x index:0 type:.In<.Z1> VALUE_PARAMETER name:y index:1 type:.In<.Z2> BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun testInIs2 (x: .In<.Z1>, y: .In<.Z2>): kotlin.Boolean declared in ' CALL 'public final fun isT (): kotlin.Boolean [inline] declared in ' type=kotlin.Boolean origin=null : - FUN name:testInIs3 visibility:public modality:FINAL <> (x:.In<.A1>, y:.In<.A2>) returnType:kotlin.Boolean + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.Z1> origin=null + : + x: GET_VAR 'x: .In<.Z1> declared in .testInIs2' type=.In<.Z1> origin=null + y: GET_VAR 'y: .In<.Z2> declared in .testInIs2' type=.In<.Z2> origin=null + FUN name:testInIs3 visibility:public modality:FINAL <> (x:.In<.A1>, y:.In<.A2>) returnType:kotlin.Boolean VALUE_PARAMETER name:x index:0 type:.In<.A1> VALUE_PARAMETER name:y index:1 type:.In<.A2> BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun testInIs3 (x: .In<.A1>, y: .In<.A2>): kotlin.Boolean declared in ' CALL 'public final fun isT (): kotlin.Boolean [inline] declared in ' type=kotlin.Boolean origin=null : - FUN name:testInAs1 visibility:public modality:FINAL <> (x:.In<.A>, y:.In<.B>) returnType:kotlin.Unit + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.A1> origin=null + : + x: GET_VAR 'x: .In<.A1> declared in .testInIs3' type=.In<.A1> origin=null + y: GET_VAR 'y: .In<.A2> declared in .testInIs3' type=.In<.A2> origin=null + FUN name:testInAs1 visibility:public modality:FINAL <> (x:.In<.A>, y:.In<.B>) returnType:kotlin.Unit VALUE_PARAMETER name:x index:0 type:.In<.A> VALUE_PARAMETER name:y index:1 type:.In<.B> BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun testInAs1 (x: .In<.A>, y: .In<.B>): kotlin.Unit declared in ' CALL 'public final fun asT (): kotlin.Unit [inline] declared in ' type=kotlin.Unit origin=null : - FUN name:testInAs2 visibility:public modality:FINAL <> (x:.In<.Z1>, y:.In<.Z2>) returnType:kotlin.Unit + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.A> origin=null + : + x: GET_VAR 'x: .In<.A> declared in .testInAs1' type=.In<.A> origin=null + y: GET_VAR 'y: .In<.B> declared in .testInAs1' type=.In<.B> origin=null + FUN name:testInAs2 visibility:public modality:FINAL <> (x:.In<.Z1>, y:.In<.Z2>) returnType:kotlin.Unit VALUE_PARAMETER name:x index:0 type:.In<.Z1> VALUE_PARAMETER name:y index:1 type:.In<.Z2> BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun testInAs2 (x: .In<.Z1>, y: .In<.Z2>): kotlin.Unit declared in ' CALL 'public final fun asT (): kotlin.Unit [inline] declared in ' type=kotlin.Unit origin=null : - FUN name:testInAs3 visibility:public modality:FINAL <> (x:.In<.A1>, y:.In<.A2>) returnType:kotlin.Unit + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.Z1> origin=null + : + x: GET_VAR 'x: .In<.Z1> declared in .testInAs2' type=.In<.Z1> origin=null + y: GET_VAR 'y: .In<.Z2> declared in .testInAs2' type=.In<.Z2> origin=null + FUN name:testInAs3 visibility:public modality:FINAL <> (x:.In<.A1>, y:.In<.A2>) returnType:kotlin.Unit VALUE_PARAMETER name:x index:0 type:.In<.A1> VALUE_PARAMETER name:y index:1 type:.In<.A2> BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun testInAs3 (x: .In<.A1>, y: .In<.A2>): kotlin.Unit declared in ' CALL 'public final fun asT (): kotlin.Unit [inline] declared in ' type=kotlin.Unit origin=null : - + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.A1> origin=null + : + x: GET_VAR 'x: .In<.A1> declared in .testInAs3' type=.In<.A1> origin=null + y: GET_VAR 'y: .In<.A2> declared in .testInAs3' type=.In<.A2> origin=null diff --git a/compiler/testData/ir/irText/types/intersectionType3_OI.fir.txt b/compiler/testData/ir/irText/types/intersectionType3_OI.fir.txt index a6e0736950b..49f69cdef24 100644 --- a/compiler/testData/ir/irText/types/intersectionType3_OI.fir.txt +++ b/compiler/testData/ir/irText/types/intersectionType3_OI.fir.txt @@ -15,14 +15,16 @@ FILE fqName: fileName:/intersectionType3_OI.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN name:isT visibility:public modality:FINAL () returnType:kotlin.Boolean [inline] + FUN name:isT visibility:public modality:FINAL ($receiver:.In.isT>) returnType:kotlin.Boolean [inline] TYPE_PARAMETER name:T index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:.In.isT> BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun isT (): kotlin.Boolean [inline] declared in ' TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=T of .isT ERROR_CALL 'Unresolved reference: this#' type=.In.isT> - FUN name:asT visibility:public modality:FINAL () returnType:kotlin.Unit [inline] + FUN name:asT visibility:public modality:FINAL ($receiver:.In.asT>) returnType:kotlin.Unit [inline] TYPE_PARAMETER name:T index:0 variance: superTypes:[] + $receiver: VALUE_PARAMETER name: type:.In.asT> BLOCK_BODY TYPE_OP type=T of .asT origin=CAST typeOperand=T of .asT ERROR_CALL 'Unresolved reference: this#' type=.In.asT> @@ -130,6 +132,10 @@ FILE fqName: fileName:/intersectionType3_OI.kt RETURN type=kotlin.Nothing from='public final fun testInIs1 (x: .In<.A>, y: .In<.B>): kotlin.Boolean declared in ' CALL 'public final fun isT (): kotlin.Boolean [inline] declared in ' type=kotlin.Boolean origin=null : + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.A> origin=null + : + x: GET_VAR 'x: .In<.A> declared in .testInIs1' type=.In<.A> origin=null + y: GET_VAR 'y: .In<.B> declared in .testInIs1' type=.In<.B> origin=null FUN name:testInIs2 visibility:public modality:FINAL <> (x:.In<.Z1>, y:.In<.Z2>) returnType:kotlin.Boolean VALUE_PARAMETER name:x index:0 type:.In<.Z1> VALUE_PARAMETER name:y index:1 type:.In<.Z2> @@ -137,6 +143,10 @@ FILE fqName: fileName:/intersectionType3_OI.kt RETURN type=kotlin.Nothing from='public final fun testInIs2 (x: .In<.Z1>, y: .In<.Z2>): kotlin.Boolean declared in ' CALL 'public final fun isT (): kotlin.Boolean [inline] declared in ' type=kotlin.Boolean origin=null : + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.Z1> origin=null + : + x: GET_VAR 'x: .In<.Z1> declared in .testInIs2' type=.In<.Z1> origin=null + y: GET_VAR 'y: .In<.Z2> declared in .testInIs2' type=.In<.Z2> origin=null FUN name:testInIs3 visibility:public modality:FINAL <> (x:.In<.A1>, y:.In<.A2>) returnType:kotlin.Boolean VALUE_PARAMETER name:x index:0 type:.In<.A1> VALUE_PARAMETER name:y index:1 type:.In<.A2> @@ -144,6 +154,10 @@ FILE fqName: fileName:/intersectionType3_OI.kt RETURN type=kotlin.Nothing from='public final fun testInIs3 (x: .In<.A1>, y: .In<.A2>): kotlin.Boolean declared in ' CALL 'public final fun isT (): kotlin.Boolean [inline] declared in ' type=kotlin.Boolean origin=null : + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.A1> origin=null + : + x: GET_VAR 'x: .In<.A1> declared in .testInIs3' type=.In<.A1> origin=null + y: GET_VAR 'y: .In<.A2> declared in .testInIs3' type=.In<.A2> origin=null FUN name:testInAs1 visibility:public modality:FINAL <> (x:.In<.A>, y:.In<.B>) returnType:kotlin.Unit VALUE_PARAMETER name:x index:0 type:.In<.A> VALUE_PARAMETER name:y index:1 type:.In<.B> @@ -151,6 +165,10 @@ FILE fqName: fileName:/intersectionType3_OI.kt RETURN type=kotlin.Nothing from='public final fun testInAs1 (x: .In<.A>, y: .In<.B>): kotlin.Unit declared in ' CALL 'public final fun asT (): kotlin.Unit [inline] declared in ' type=kotlin.Unit origin=null : + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.A> origin=null + : + x: GET_VAR 'x: .In<.A> declared in .testInAs1' type=.In<.A> origin=null + y: GET_VAR 'y: .In<.B> declared in .testInAs1' type=.In<.B> origin=null FUN name:testInAs2 visibility:public modality:FINAL <> (x:.In<.Z1>, y:.In<.Z2>) returnType:kotlin.Unit VALUE_PARAMETER name:x index:0 type:.In<.Z1> VALUE_PARAMETER name:y index:1 type:.In<.Z2> @@ -158,6 +176,10 @@ FILE fqName: fileName:/intersectionType3_OI.kt RETURN type=kotlin.Nothing from='public final fun testInAs2 (x: .In<.Z1>, y: .In<.Z2>): kotlin.Unit declared in ' CALL 'public final fun asT (): kotlin.Unit [inline] declared in ' type=kotlin.Unit origin=null : + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.Z1> origin=null + : + x: GET_VAR 'x: .In<.Z1> declared in .testInAs2' type=.In<.Z1> origin=null + y: GET_VAR 'y: .In<.Z2> declared in .testInAs2' type=.In<.Z2> origin=null FUN name:testInAs3 visibility:public modality:FINAL <> (x:.In<.A1>, y:.In<.A2>) returnType:kotlin.Unit VALUE_PARAMETER name:x index:0 type:.In<.A1> VALUE_PARAMETER name:y index:1 type:.In<.A2> @@ -165,3 +187,7 @@ FILE fqName: fileName:/intersectionType3_OI.kt RETURN type=kotlin.Nothing from='public final fun testInAs3 (x: .In<.A1>, y: .In<.A2>): kotlin.Unit declared in ' CALL 'public final fun asT (): kotlin.Unit [inline] declared in ' type=kotlin.Unit origin=null : + $receiver: CALL 'public final fun sel (x: S of .sel, y: S of .sel): S of .sel declared in ' type=.In<.A1> origin=null + : + x: GET_VAR 'x: .In<.A1> declared in .testInAs3' type=.In<.A1> origin=null + y: GET_VAR 'y: .In<.A2> declared in .testInAs3' type=.In<.A2> origin=null diff --git a/compiler/testData/ir/irText/types/nullabilityAssertionOnExtensionReceiver.fir.txt b/compiler/testData/ir/irText/types/nullabilityAssertionOnExtensionReceiver.fir.txt index c349752acca..396f6809294 100644 --- a/compiler/testData/ir/irText/types/nullabilityAssertionOnExtensionReceiver.fir.txt +++ b/compiler/testData/ir/irText/types/nullabilityAssertionOnExtensionReceiver.fir.txt @@ -1,5 +1,6 @@ FILE fqName: fileName:/nullabilityAssertionOnExtensionReceiver.kt - FUN name:extension visibility:public modality:FINAL <> () returnType:kotlin.Unit + FUN name:extension visibility:public modality:FINAL <> ($receiver:kotlin.String) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:kotlin.String BLOCK_BODY CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.C @@ -7,8 +8,9 @@ FILE fqName: fileName:/nullabilityAssertionOnExtensionReceiver.kt BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () [primary] declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]' - FUN name:memberExtension visibility:public modality:FINAL <> ($this:.C) returnType:kotlin.Unit + FUN name:memberExtension visibility:public modality:FINAL <> ($this:.C, $receiver:kotlin.String) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.C + $receiver: VALUE_PARAMETER name: type:kotlin.String BLOCK_BODY FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean overridden: @@ -26,7 +28,9 @@ FILE fqName: fileName:/nullabilityAssertionOnExtensionReceiver.kt FUN name:testExt visibility:public modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY CALL 'public final fun extension (): kotlin.Unit declared in ' type=kotlin.Unit origin=null - FUN name:testMemberExt visibility:public modality:FINAL <> () returnType:kotlin.Unit + $receiver: CALL 'public open fun s (): kotlin.String? declared in .J' type=kotlin.String? origin=null + FUN name:testMemberExt visibility:public modality:FINAL <> ($receiver:.C) returnType:kotlin.Unit + $receiver: VALUE_PARAMETER name: type:.C BLOCK_BODY CALL 'public final fun memberExtension (): kotlin.Unit declared in .C' type=kotlin.Unit origin=null $this: CALL 'public open fun s (): kotlin.String? declared in .J' type=kotlin.String? origin=null