Add original KotlinType to rendered IrErrorType
Also improve an error message in `IrType.erasedUpperBound`, which seems like a frequent first place where the JVM IR backend crashes in case an error type has made it past psi2ir. This will help in diagnosing problems such as KT-45016.
This commit is contained in:
@@ -113,7 +113,7 @@ val IrType.erasedUpperBound: IrClass
|
||||
get() = when (val classifier = classifierOrNull) {
|
||||
is IrClassSymbol -> classifier.owner
|
||||
is IrTypeParameterSymbol -> classifier.owner.erasedUpperBound
|
||||
else -> throw IllegalStateException()
|
||||
else -> error(render())
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.ir.symbols.IrTypeAliasSymbol
|
||||
import org.jetbrains.kotlin.ir.symbols.IrVariableSymbol
|
||||
import org.jetbrains.kotlin.ir.types.*
|
||||
import org.jetbrains.kotlin.ir.types.impl.ReturnTypeIsNotInitializedException
|
||||
import org.jetbrains.kotlin.ir.types.impl.originalKotlinType
|
||||
import org.jetbrains.kotlin.ir.visitors.IrElementVisitor
|
||||
import org.jetbrains.kotlin.renderer.DescriptorRenderer
|
||||
import org.jetbrains.kotlin.types.Variance
|
||||
@@ -103,7 +104,7 @@ class RenderIrElementVisitor(private val normalizeNames: Boolean = false) : IrEl
|
||||
when (this) {
|
||||
is IrDynamicType -> "dynamic"
|
||||
|
||||
is IrErrorType -> "IrErrorType"
|
||||
is IrErrorType -> "IrErrorType($originalKotlinType)"
|
||||
|
||||
is IrSimpleType -> buildTrimEnd {
|
||||
append(classifier.renderClassifierFqn())
|
||||
|
||||
+4
-4
@@ -2,11 +2,11 @@ FILE fqName:<root> fileName:/useNextParamInLambda.kt
|
||||
FUN name:f visibility:public modality:FINAL <> (f1:kotlin.Function0<kotlin.String>, f2:kotlin.Function0<kotlin.String>) returnType:kotlin.String
|
||||
VALUE_PARAMETER name:f1 index:0 type:kotlin.Function0<kotlin.String>
|
||||
EXPRESSION_BODY
|
||||
FUN_EXPR type=kotlin.Function0<IrErrorType> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:IrErrorType
|
||||
FUN_EXPR type=kotlin.Function0<IrErrorType(null)> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:IrErrorType(null)
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (): IrErrorType declared in <root>.f'
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: f2>#' type=IrErrorType
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (): IrErrorType(null) declared in <root>.f'
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: f2>#' type=IrErrorType(null)
|
||||
VALUE_PARAMETER name:f2 index:1 type:kotlin.Function0<kotlin.String>
|
||||
EXPRESSION_BODY
|
||||
FUN_EXPR type=kotlin.Function0<kotlin.String> origin=LAMBDA
|
||||
|
||||
+21
-21
@@ -1,39 +1,39 @@
|
||||
FILE fqName:<root> fileName:/unresolvedReference.kt
|
||||
PROPERTY name:test1 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test1 type:IrErrorType visibility:private [final,static]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test1 type:IrErrorType(null) visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: unresolved>#' type=IrErrorType
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test1> visibility:public modality:FINAL <> () returnType:IrErrorType
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: unresolved>#' type=IrErrorType(null)
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test1> visibility:public modality:FINAL <> () returnType:IrErrorType(null)
|
||||
correspondingProperty: PROPERTY name:test1 visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test1> (): IrErrorType declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test1 type:IrErrorType visibility:private [final,static]' type=IrErrorType origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test1> (): IrErrorType(null) declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test1 type:IrErrorType(null) visibility:private [final,static]' type=IrErrorType(null) origin=null
|
||||
PROPERTY name:test2 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test2 type:IrErrorType visibility:private [final,static]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test2 type:IrErrorType(null) visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: unresolved>#' type=IrErrorType
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test2> visibility:public modality:FINAL <> () returnType:IrErrorType
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: unresolved>#' type=IrErrorType(null)
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test2> visibility:public modality:FINAL <> () returnType:IrErrorType(null)
|
||||
correspondingProperty: PROPERTY name:test2 visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test2> (): IrErrorType declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test2 type:IrErrorType visibility:private [final,static]' type=IrErrorType origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test2> (): IrErrorType(null) declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test2 type:IrErrorType(null) visibility:private [final,static]' type=IrErrorType(null) origin=null
|
||||
PROPERTY name:test3 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test3 type:IrErrorType visibility:private [final,static]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test3 type:IrErrorType(null) visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: unresolved>#' type=IrErrorType
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: unresolved>#' type=IrErrorType(null)
|
||||
CONST Int type=kotlin.Int value=56
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test3> visibility:public modality:FINAL <> () returnType:IrErrorType
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test3> visibility:public modality:FINAL <> () returnType:IrErrorType(null)
|
||||
correspondingProperty: PROPERTY name:test3 visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test3> (): IrErrorType declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test3 type:IrErrorType visibility:private [final,static]' type=IrErrorType origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test3> (): IrErrorType(null) declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test3 type:IrErrorType(null) visibility:private [final,static]' type=IrErrorType(null) origin=null
|
||||
PROPERTY name:test4 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test4 type:IrErrorType visibility:private [final,static]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test4 type:IrErrorType(null) visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
ERROR_CALL 'Unresolved reference: <Ambiguity: times, [kotlin/Int.times, kotlin/Int.times, kotlin/Int.times, kotlin/Int.times, kotlin/Int.times, kotlin/Int.times]>#' type=IrErrorType
|
||||
ERROR_EXPR 'No right operand' type=IrErrorType
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test4> visibility:public modality:FINAL <> () returnType:IrErrorType
|
||||
ERROR_CALL 'Unresolved reference: <Ambiguity: times, [kotlin/Int.times, kotlin/Int.times, kotlin/Int.times, kotlin/Int.times, kotlin/Int.times, kotlin/Int.times]>#' type=IrErrorType(null)
|
||||
ERROR_EXPR 'No right operand' type=IrErrorType(null)
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test4> visibility:public modality:FINAL <> () returnType:IrErrorType(null)
|
||||
correspondingProperty: PROPERTY name:test4 visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test4> (): IrErrorType declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test4 type:IrErrorType visibility:private [final,static]' type=IrErrorType origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test4> (): IrErrorType(null) declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test4 type:IrErrorType(null) visibility:private [final,static]' type=IrErrorType(null) origin=null
|
||||
|
||||
+20
-20
@@ -1,39 +1,39 @@
|
||||
FILE fqName:<root> fileName:/unresolvedReference.kt
|
||||
PROPERTY name:test1 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test1 type:IrErrorType visibility:private [final,static]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test1 type:IrErrorType([ERROR : Type for unresolved]) visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
ERROR_CALL 'unresolved' type=IrErrorType
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test1> visibility:public modality:FINAL <> () returnType:IrErrorType
|
||||
ERROR_CALL 'unresolved' type=IrErrorType([ERROR : ])
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test1> visibility:public modality:FINAL <> () returnType:IrErrorType([ERROR : Type for unresolved])
|
||||
correspondingProperty: PROPERTY name:test1 visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test1> (): IrErrorType declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test1 type:IrErrorType visibility:private [final,static]' type=IrErrorType origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test1> (): IrErrorType([ERROR : Type for unresolved]) declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test1 type:IrErrorType([ERROR : Type for unresolved]) visibility:private [final,static]' type=IrErrorType([ERROR : Type for unresolved]) origin=null
|
||||
PROPERTY name:test2 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test2 type:IrErrorType visibility:private [final,static]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test2 type:IrErrorType([ERROR : Unresolved]) visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
ERROR_CALL 'unresolved()' type=IrErrorType
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test2> visibility:public modality:FINAL <> () returnType:IrErrorType
|
||||
ERROR_CALL 'unresolved()' type=IrErrorType([ERROR : ])
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test2> visibility:public modality:FINAL <> () returnType:IrErrorType([ERROR : Unresolved])
|
||||
correspondingProperty: PROPERTY name:test2 visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test2> (): IrErrorType declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test2 type:IrErrorType visibility:private [final,static]' type=IrErrorType origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test2> (): IrErrorType([ERROR : Unresolved]) declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test2 type:IrErrorType([ERROR : Unresolved]) visibility:private [final,static]' type=IrErrorType([ERROR : Unresolved]) origin=null
|
||||
PROPERTY name:test3 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test3 type:IrErrorType visibility:private [final,static]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test3 type:IrErrorType([ERROR : Type for 42.unresolved(56)]) visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
ERROR_CALL 'unresolved(56)' type=IrErrorType
|
||||
ERROR_CALL 'unresolved(56)' type=IrErrorType([ERROR : ])
|
||||
receiver: CONST Int type=kotlin.Int value=42
|
||||
CONST Int type=kotlin.Int value=56
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test3> visibility:public modality:FINAL <> () returnType:IrErrorType
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test3> visibility:public modality:FINAL <> () returnType:IrErrorType([ERROR : Type for 42.unresolved(56)])
|
||||
correspondingProperty: PROPERTY name:test3 visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test3> (): IrErrorType declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test3 type:IrErrorType visibility:private [final,static]' type=IrErrorType origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test3> (): IrErrorType([ERROR : Type for 42.unresolved(56)]) declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test3 type:IrErrorType([ERROR : Type for 42.unresolved(56)]) visibility:private [final,static]' type=IrErrorType([ERROR : Type for 42.unresolved(56)]) origin=null
|
||||
PROPERTY name:test4 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test4 type:IrErrorType visibility:private [final,static]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test4 type:IrErrorType([ERROR : Type for 42 *]) visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
ERROR_EXPR '42 *' type=IrErrorType
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test4> visibility:public modality:FINAL <> () returnType:IrErrorType
|
||||
ERROR_EXPR '42 *' type=IrErrorType([ERROR : ])
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test4> visibility:public modality:FINAL <> () returnType:IrErrorType([ERROR : Type for 42 *])
|
||||
correspondingProperty: PROPERTY name:test4 visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test4> (): IrErrorType declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test4 type:IrErrorType visibility:private [final,static]' type=IrErrorType origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test4> (): IrErrorType([ERROR : Type for 42 *]) declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test4 type:IrErrorType([ERROR : Type for 42 *]) visibility:private [final,static]' type=IrErrorType([ERROR : Type for 42 *]) origin=null
|
||||
|
||||
+8
-8
@@ -53,8 +53,8 @@ FILE fqName:<root> fileName:/arrayAsVarargAfterSamArgument.kt
|
||||
strs: VARARG type=kotlin.Array<out kotlin.String?>? varargElementType=kotlin.String?
|
||||
SPREAD_ELEMENT
|
||||
GET_VAR 'arr: kotlin.Array<kotlin.String> declared in <root>.test' type=kotlin.Array<kotlin.String> origin=null
|
||||
VAR name:i1 type:IrErrorType [val]
|
||||
ERROR_CALL 'Unresolved reference: <Ambiguity: Test, [/Test.Test, /Test.Test]>#' type=IrErrorType
|
||||
VAR name:i1 type:IrErrorType(null) [val]
|
||||
ERROR_CALL 'Unresolved reference: <Ambiguity: Test, [/Test.Test, /Test.Test]>#' type=IrErrorType(null)
|
||||
FUN_EXPR type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
@@ -72,8 +72,8 @@ FILE fqName:<root> fileName:/arrayAsVarargAfterSamArgument.kt
|
||||
strs: VARARG type=kotlin.Array<out kotlin.String?>? varargElementType=kotlin.String?
|
||||
SPREAD_ELEMENT
|
||||
GET_VAR 'arr: kotlin.Array<kotlin.String> declared in <root>.test' type=kotlin.Array<kotlin.String> origin=null
|
||||
VAR name:i3 type:IrErrorType [val]
|
||||
ERROR_CALL 'Unresolved reference: <Ambiguity: Test, [/Test.Test, /Test.Test]>#' type=IrErrorType
|
||||
VAR name:i3 type:IrErrorType(null) [val]
|
||||
ERROR_CALL 'Unresolved reference: <Ambiguity: Test, [/Test.Test, /Test.Test]>#' type=IrErrorType(null)
|
||||
FUN_EXPR type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
@@ -125,7 +125,7 @@ FILE fqName:<root> fileName:/arrayAsVarargAfterSamArgument.kt
|
||||
strs: VARARG type=kotlin.Array<out kotlin.String?>? varargElementType=kotlin.String?
|
||||
SPREAD_ELEMENT
|
||||
GET_VAR 'arr: kotlin.Array<kotlin.String> declared in <root>.test' type=kotlin.Array<kotlin.String> origin=null
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: foo2>#' type=IrErrorType
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: foo2>#' type=IrErrorType(null)
|
||||
FUN_EXPR type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
@@ -137,7 +137,7 @@ FILE fqName:<root> fileName:/arrayAsVarargAfterSamArgument.kt
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (): kotlin.Unit declared in <root>.test'
|
||||
GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
|
||||
GET_VAR 'arr: kotlin.Array<kotlin.String> declared in <root>.test' type=kotlin.Array<kotlin.String> origin=null
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: foo2>#' type=IrErrorType
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: foo2>#' type=IrErrorType(null)
|
||||
GET_VAR 'r: java.lang.Runnable declared in <root>.test' type=java.lang.Runnable origin=null
|
||||
FUN_EXPR type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit
|
||||
@@ -145,7 +145,7 @@ FILE fqName:<root> fileName:/arrayAsVarargAfterSamArgument.kt
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (): kotlin.Unit declared in <root>.test'
|
||||
GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
|
||||
CONST String type=kotlin.String value=""
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: foo2>#' type=IrErrorType
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: foo2>#' type=IrErrorType(null)
|
||||
FUN_EXPR type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
@@ -157,7 +157,7 @@ FILE fqName:<root> fileName:/arrayAsVarargAfterSamArgument.kt
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (): kotlin.Unit declared in <root>.test'
|
||||
GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
|
||||
GET_VAR 'arr: kotlin.Array<kotlin.String> declared in <root>.test' type=kotlin.Array<kotlin.String> origin=null
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: foo2>#' type=IrErrorType
|
||||
ERROR_CALL 'Unresolved reference: <Unresolved name: foo2>#' type=IrErrorType(null)
|
||||
GET_VAR 'r: java.lang.Runnable declared in <root>.test' type=java.lang.Runnable origin=null
|
||||
FUN_EXPR type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit
|
||||
|
||||
@@ -61,21 +61,21 @@ FILE fqName:<root> fileName:/castsInsideCoroutineInference.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun unsafeFlow <T> (block: @[ExtensionFunctionType] kotlin.coroutines.SuspendFunction1<<root>.FlowCollector<T of <root>.unsafeFlow>, kotlin.Unit>): <root>.Flow<T of <root>.unsafeFlow> [inline] declared in <root>'
|
||||
CALL 'public final fun TODO (): kotlin.Nothing [inline] declared in kotlin.StandardKt' type=kotlin.Nothing origin=null
|
||||
FUN name:onCompletion visibility:public modality:FINAL <T> ($receiver:<root>.Flow<T of <root>.onCompletion>, action:kotlin.coroutines.SuspendFunction1<kotlin.Throwable?, kotlin.Unit>) returnType:IrErrorType
|
||||
FUN name:onCompletion visibility:public modality:FINAL <T> ($receiver:<root>.Flow<T of <root>.onCompletion>, action:kotlin.coroutines.SuspendFunction1<kotlin.Throwable?, kotlin.Unit>) returnType:IrErrorType(null)
|
||||
annotations:
|
||||
Deprecated(message = 'binary compatibility with a version w/o FlowCollector receiver', replaceWith = <null>, level = GET_ENUM 'ENUM_ENTRY IR_EXTERNAL_DECLARATION_STUB name:HIDDEN' type=kotlin.DeprecationLevel)
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Flow<T of <root>.onCompletion>
|
||||
VALUE_PARAMETER name:action index:0 type:kotlin.coroutines.SuspendFunction1<kotlin.Throwable?, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun onCompletion <T> (action: kotlin.coroutines.SuspendFunction1<kotlin.Throwable?, kotlin.Unit>): IrErrorType declared in <root>'
|
||||
ERROR_CALL 'Unresolved reference: <Ambiguity: onCompletion, [/onCompletion, /onCompletion]>#' type=IrErrorType
|
||||
RETURN type=kotlin.Nothing from='public final fun onCompletion <T> (action: kotlin.coroutines.SuspendFunction1<kotlin.Throwable?, kotlin.Unit>): IrErrorType(null) declared in <root>'
|
||||
ERROR_CALL 'Unresolved reference: <Ambiguity: onCompletion, [/onCompletion, /onCompletion]>#' type=IrErrorType(null)
|
||||
FUN_EXPR type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public abstract fun invoke (p1: P1 of kotlin.coroutines.SuspendFunction1): R of kotlin.coroutines.SuspendFunction1 [suspend,operator] declared in kotlin.coroutines.SuspendFunction1' type=kotlin.Unit origin=null
|
||||
$this: GET_VAR 'action: kotlin.coroutines.SuspendFunction1<kotlin.Throwable?, kotlin.Unit> declared in <root>.onCompletion' type=kotlin.coroutines.SuspendFunction1<kotlin.Throwable?, kotlin.Unit> origin=VARIABLE_AS_FUNCTION
|
||||
p1: ERROR_CALL 'Unresolved reference: <Unresolved name: it>#' type=IrErrorType
|
||||
p1: ERROR_CALL 'Unresolved reference: <Unresolved name: it>#' type=IrErrorType(null)
|
||||
FUN name:asFairChannel visibility:private modality:FINAL <> ($receiver:<root>.CoroutineScope, flow:<root>.Flow<*>) returnType:<root>.ReceiveChannel<kotlin.Any>
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.CoroutineScope
|
||||
VALUE_PARAMETER name:flow index:0 type:<root>.Flow<*>
|
||||
|
||||
Reference in New Issue
Block a user