FIR: Update test-data (Delegate inference)
This commit is contained in:
committed by
teamcity
parent
b45b624945
commit
40a2837b4c
@@ -1,88 +0,0 @@
|
||||
FILE fqName:<root> fileName:/kt47082.kt
|
||||
FUN name:produce visibility:public modality:FINAL <E> (block:@[ExtensionFunctionType] kotlin.Function1<<root>.Derived<E of <root>.produce>, kotlin.Unit>) returnType:E of <root>.produce
|
||||
TYPE_PARAMETER name:E index:0 variance: superTypes:[kotlin.Any?]
|
||||
VALUE_PARAMETER name:block index:0 type:@[ExtensionFunctionType] kotlin.Function1<<root>.Derived<E of <root>.produce>, kotlin.Unit>
|
||||
annotations:
|
||||
BuilderInference
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun produce <E> (block: @[ExtensionFunctionType] kotlin.Function1<<root>.Derived<E of <root>.produce>, kotlin.Unit>): E of <root>.produce declared in <root>'
|
||||
TYPE_OP type=E of <root>.produce origin=CAST typeOperand=E of <root>.produce
|
||||
CONST Null type=kotlin.Nothing? value=null
|
||||
CLASS INTERFACE name:Derived modality:ABSTRACT visibility:public superTypes:[<root>.Base<E of <root>.Derived>]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Derived<E of <root>.Derived>
|
||||
TYPE_PARAMETER name:E index:0 variance:in superTypes:[kotlin.Any?]
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [fake_override,operator] declared in <root>.Base
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int [fake_override] declared in <root>.Base
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String [fake_override] declared in <root>.Base
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CLASS INTERFACE name:Base modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Base<E of <root>.Base>
|
||||
TYPE_PARAMETER name:E index:0 variance:in superTypes:[kotlin.Any?]
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CLASS INTERFACE name:Receiver modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Receiver<E of <root>.Receiver>
|
||||
TYPE_PARAMETER name:E index:0 variance:out superTypes:[kotlin.Any?]
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:toChannel visibility:public modality:FINAL <E, C> ($receiver:<root>.Receiver<E of <root>.toChannel>, destination:C of <root>.toChannel) returnType:C of <root>.toChannel
|
||||
TYPE_PARAMETER name:E index:0 variance: superTypes:[kotlin.Any?]
|
||||
TYPE_PARAMETER name:C index:1 variance: superTypes:[<root>.Base<E of <root>.toChannel>]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Receiver<E of <root>.toChannel>
|
||||
VALUE_PARAMETER name:destination index:0 type:C of <root>.toChannel
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun toChannel <E, C> (destination: C of <root>.toChannel): C of <root>.toChannel declared in <root>'
|
||||
TYPE_OP type=C of <root>.toChannel origin=CAST typeOperand=C of <root>.toChannel
|
||||
CONST Null type=kotlin.Nothing? value=null
|
||||
FUN name:foo visibility:public modality:FINAL <R> (r:<root>.Receiver<R of <root>.foo>) returnType:R of <root>.foo
|
||||
TYPE_PARAMETER name:R index:0 variance: superTypes:[kotlin.Any?]
|
||||
VALUE_PARAMETER name:r index:0 type:<root>.Receiver<R of <root>.foo>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo <R> (r: <root>.Receiver<R of <root>.foo>): R of <root>.foo declared in <root>'
|
||||
CALL 'public final fun produce <E> (block: @[ExtensionFunctionType] kotlin.Function1<<root>.Derived<E of <root>.produce>, kotlin.Unit>): E of <root>.produce declared in <root>' type=R of <root>.foo origin=null
|
||||
<E>: R of <root>.foo
|
||||
block: FUN_EXPR type=@[ExtensionFunctionType] kotlin.Function1<<root>.Derived<IrErrorType(null)>, kotlin.Unit> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> ($receiver:<root>.Derived<IrErrorType(null)>) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:$this$produce type:<root>.Derived<IrErrorType(null)>
|
||||
BLOCK_BODY
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
CALL 'public final fun toChannel <E, C> (destination: C of <root>.toChannel): C of <root>.toChannel declared in <root>' type=<root>.Derived<IrErrorType(null)> origin=null
|
||||
<E>: R of <root>.foo
|
||||
<C>: <root>.Derived<IrErrorType(null)>
|
||||
$receiver: GET_VAR 'r: <root>.Receiver<R of <root>.foo> declared in <root>.foo' type=<root>.Receiver<R of <root>.foo> origin=null
|
||||
destination: GET_VAR '$this$produce: <root>.Derived<IrErrorType(null)> declared in <root>.foo.<anonymous>' type=<root>.Derived<IrErrorType(null)> origin=null
|
||||
FUN name:box visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
|
||||
CONST String type=kotlin.String value="OK"
|
||||
@@ -1,31 +0,0 @@
|
||||
fun <E : Any?> produce(@BuilderInference block: @ExtensionFunctionType Function1<Derived<E>, Unit>): E {
|
||||
return null as E
|
||||
}
|
||||
|
||||
interface Derived<in E : Any?> : Base<E> {
|
||||
|
||||
}
|
||||
|
||||
interface Base<in E : Any?> {
|
||||
|
||||
}
|
||||
|
||||
interface Receiver<out E : Any?> {
|
||||
|
||||
}
|
||||
|
||||
fun <E : Any?, C : Base<E>> Receiver<E>.toChannel(destination: C): C {
|
||||
return null as C
|
||||
}
|
||||
|
||||
fun <R : Any?> foo(r: Receiver<R>): R {
|
||||
return produce<R>(block = local fun Derived<ErrorType>.<anonymous>() {
|
||||
r.toChannel<R, Derived<ErrorType>>(destination = $this$produce) /*~> Unit */
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// TARGET_BACKEND: JVM
|
||||
// WITH_STDLIB
|
||||
// !OPT_IN: kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
Reference in New Issue
Block a user