5183019cb8
This is required to have stable resolution order to avoid concurrent modifications and correct resolution context. This also fixes KT-63700 as a super call expands only during body resolution in the case of secondary constructor ^KT-63042 ^KT-63700 Fixed
40 lines
2.2 KiB
Plaintext
Vendored
40 lines
2.2 KiB
Plaintext
Vendored
KT element: KtParameter
|
|
FIR element: FirValueParameterImpl
|
|
FIR source kind: KtRealSourceElementKind
|
|
|
|
FIR element rendered:
|
|
[ResolvedTo(BODY_RESOLVE)] <destruct>: R|X|
|
|
|
|
FIR FILE:
|
|
FILE: [ResolvedTo(IMPORTS)] destructuringDeclarationParameterInLambda.kt
|
|
public final data [ResolvedTo(CONTRACTS)] class X : R|kotlin/Any| {
|
|
public [ResolvedTo(CONTRACTS)] [ContainingClassKey=X] constructor([ResolvedTo(CONTRACTS)] [CorrespondingProperty=/X.a] a: R|kotlin/Int|, [ResolvedTo(CONTRACTS)] [CorrespondingProperty=/X.b] b: R|kotlin/Int|): R|X| {
|
|
LAZY_super<R|kotlin/Any|>
|
|
}
|
|
|
|
public final [ResolvedTo(CONTRACTS)] [ComponentFunctionSymbolKey=/X.component1, IsFromPrimaryConstructor=true] val a: R|kotlin/Int| = R|<local>/a|
|
|
public [ResolvedTo(CONTRACTS)] [ContainingClassKey=X] get(): R|kotlin/Int|
|
|
|
|
public final [ResolvedTo(CONTRACTS)] [ComponentFunctionSymbolKey=/X.component2, IsFromPrimaryConstructor=true] val b: R|kotlin/Int| = R|<local>/b|
|
|
public [ResolvedTo(CONTRACTS)] [ContainingClassKey=X] get(): R|kotlin/Int|
|
|
|
|
public final operator [ResolvedTo(CONTRACTS)] fun component1(): R|kotlin/Int|
|
|
|
|
public final operator [ResolvedTo(CONTRACTS)] fun component2(): R|kotlin/Int|
|
|
|
|
public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] a: R|kotlin/Int| = this@R|/X|.R|/X.a|, [ResolvedTo(STATUS)] b: R|kotlin/Int| = this@R|/X|.R|/X.b|): R|X|
|
|
|
|
}
|
|
public final [ResolvedTo(CONTRACTS)] fun x([ResolvedTo(CONTRACTS)] action: R|(X, kotlin/Int) -> kotlin/Unit|): R|kotlin/Unit| {
|
|
}
|
|
public final [ResolvedTo(BODY_RESOLVE)] fun main(): R|kotlin/Unit| {
|
|
R|/x|(<L> = [ResolvedTo(BODY_RESOLVE)] [MatchingParameterFunctionTypeKey=kotlin/Function2<X, kotlin/Int, kotlin/Unit>] x@fun <anonymous>([ResolvedTo(BODY_RESOLVE)] <destruct>: R|X|, [ResolvedTo(BODY_RESOLVE)] i: R|kotlin/Int|): R|kotlin/Unit| <inline=NoInline> {
|
|
[ResolvedTo(BODY_RESOLVE)] lval a: R|kotlin/Int| = R|<local>/<destruct>|.R|/X.component1|()
|
|
[ResolvedTo(BODY_RESOLVE)] lval b: R|kotlin/Int| = R|<local>/<destruct>|.R|/X.component2|()
|
|
{
|
|
^@x Unit
|
|
}
|
|
|
|
}
|
|
)
|
|
} |