K2: Adjust lazy test data after delegate inference rewritten
It's been changed because `getValue` might be not completed after exiting from call transformation while contracts processing seems to be working only with completed calls ^KT-61055 Related
This commit is contained in:
committed by
Space Team
parent
033ff38fef
commit
0f6a51fd97
@@ -291,9 +291,7 @@ FILE: [ResolvedTo(IMPORTS)] lazyProperty.kt
|
|||||||
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
||||||
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
||||||
|
|
||||||
public final operator [ResolvedTo(CONTRACTS)] fun getValue([ResolvedTo(CONTRACTS)] thisRef: R|kotlin/Any?|, [ResolvedTo(CONTRACTS)] property: R|kotlin/reflect/KProperty<*>|): R|T| {
|
public final operator [ResolvedTo(STATUS)] fun getValue([ResolvedTo(STATUS)] thisRef: R|kotlin/Any?|, [ResolvedTo(STATUS)] property: R|kotlin/reflect/KProperty<*>|): R|T| { LAZY_BLOCK }
|
||||||
^getValue value#
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
public final [ResolvedTo(CONTRACTS)] fun <[ResolvedTo(CONTRACTS)] T> lazy([ResolvedTo(CONTRACTS)] block: R|() -> T|): R|LazyDelegate<T>| {
|
public final [ResolvedTo(CONTRACTS)] fun <[ResolvedTo(CONTRACTS)] T> lazy([ResolvedTo(CONTRACTS)] block: R|() -> T|): R|LazyDelegate<T>| {
|
||||||
@@ -328,9 +326,7 @@ FILE: [ResolvedTo(IMPORTS)] lazyProperty.kt
|
|||||||
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
||||||
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
||||||
|
|
||||||
public final operator [ResolvedTo(CONTRACTS)] fun getValue([ResolvedTo(CONTRACTS)] thisRef: R|kotlin/Any?|, [ResolvedTo(CONTRACTS)] property: R|kotlin/reflect/KProperty<*>|): R|T| {
|
public final operator [ResolvedTo(STATUS)] fun getValue([ResolvedTo(STATUS)] thisRef: R|kotlin/Any?|, [ResolvedTo(STATUS)] property: R|kotlin/reflect/KProperty<*>|): R|T| { LAZY_BLOCK }
|
||||||
^getValue value#
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
public final [ResolvedTo(CONTRACTS)] fun <[ResolvedTo(CONTRACTS)] T> lazy([ResolvedTo(CONTRACTS)] block: R|() -> T|): R|LazyDelegate<T>| {
|
public final [ResolvedTo(CONTRACTS)] fun <[ResolvedTo(CONTRACTS)] T> lazy([ResolvedTo(CONTRACTS)] block: R|() -> T|): R|LazyDelegate<T>| {
|
||||||
@@ -365,9 +361,7 @@ FILE: [ResolvedTo(IMPORTS)] lazyProperty.kt
|
|||||||
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
||||||
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
||||||
|
|
||||||
public final operator [ResolvedTo(CONTRACTS)] fun getValue([ResolvedTo(CONTRACTS)] thisRef: R|kotlin/Any?|, [ResolvedTo(CONTRACTS)] property: R|kotlin/reflect/KProperty<*>|): R|T| {
|
public final operator [ResolvedTo(STATUS)] fun getValue([ResolvedTo(STATUS)] thisRef: R|kotlin/Any?|, [ResolvedTo(STATUS)] property: R|kotlin/reflect/KProperty<*>|): R|T| { LAZY_BLOCK }
|
||||||
^getValue value#
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
public final [ResolvedTo(CONTRACTS)] fun <[ResolvedTo(CONTRACTS)] T> lazy([ResolvedTo(CONTRACTS)] block: R|() -> T|): R|LazyDelegate<T>| {
|
public final [ResolvedTo(CONTRACTS)] fun <[ResolvedTo(CONTRACTS)] T> lazy([ResolvedTo(CONTRACTS)] block: R|() -> T|): R|LazyDelegate<T>| {
|
||||||
|
|||||||
@@ -385,9 +385,7 @@ FILE: [ResolvedTo(IMPORTS)] lazyPropertyScript.kts
|
|||||||
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
||||||
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
||||||
|
|
||||||
public final operator [ResolvedTo(CONTRACTS)] fun getValue([ResolvedTo(CONTRACTS)] thisRef: R|kotlin/Any?|, [ResolvedTo(CONTRACTS)] property: R|kotlin/reflect/KProperty<*>|): R|T| {
|
public final operator [ResolvedTo(STATUS)] fun getValue([ResolvedTo(STATUS)] thisRef: R|kotlin/Any?|, [ResolvedTo(STATUS)] property: R|kotlin/reflect/KProperty<*>|): R|T| { LAZY_BLOCK }
|
||||||
^getValue value#
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -431,9 +429,7 @@ FILE: [ResolvedTo(IMPORTS)] lazyPropertyScript.kts
|
|||||||
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
||||||
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
||||||
|
|
||||||
public final operator [ResolvedTo(CONTRACTS)] fun getValue([ResolvedTo(CONTRACTS)] thisRef: R|kotlin/Any?|, [ResolvedTo(CONTRACTS)] property: R|kotlin/reflect/KProperty<*>|): R|T| {
|
public final operator [ResolvedTo(STATUS)] fun getValue([ResolvedTo(STATUS)] thisRef: R|kotlin/Any?|, [ResolvedTo(STATUS)] property: R|kotlin/reflect/KProperty<*>|): R|T| { LAZY_BLOCK }
|
||||||
^getValue value#
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -477,9 +473,7 @@ FILE: [ResolvedTo(IMPORTS)] lazyPropertyScript.kts
|
|||||||
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val value: R|T| = R|<local>/value|
|
||||||
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=LazyDelegate] get(): R|T|
|
||||||
|
|
||||||
public final operator [ResolvedTo(CONTRACTS)] fun getValue([ResolvedTo(CONTRACTS)] thisRef: R|kotlin/Any?|, [ResolvedTo(CONTRACTS)] property: R|kotlin/reflect/KProperty<*>|): R|T| {
|
public final operator [ResolvedTo(STATUS)] fun getValue([ResolvedTo(STATUS)] thisRef: R|kotlin/Any?|, [ResolvedTo(STATUS)] property: R|kotlin/reflect/KProperty<*>|): R|T| { LAZY_BLOCK }
|
||||||
^getValue value#
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -862,6 +862,9 @@ abstract class FirDataFlowAnalyzer(
|
|||||||
private fun processConditionalContract(flow: MutableFlow, qualifiedAccess: FirStatement) {
|
private fun processConditionalContract(flow: MutableFlow, qualifiedAccess: FirStatement) {
|
||||||
// contracts has no effect on non-body resolve stages
|
// contracts has no effect on non-body resolve stages
|
||||||
if (!components.transformer.baseTransformerPhase.isBodyResolve) return
|
if (!components.transformer.baseTransformerPhase.isBodyResolve) return
|
||||||
|
|
||||||
|
// TODO: Consider using something besides `toResolvedCallableSymbol` as the latter only works
|
||||||
|
// for completed calls without candidates (KT-61055 for tracking)
|
||||||
val callee = when (qualifiedAccess) {
|
val callee = when (qualifiedAccess) {
|
||||||
is FirFunctionCall -> qualifiedAccess.toResolvedCallableSymbol()?.fir as? FirSimpleFunction
|
is FirFunctionCall -> qualifiedAccess.toResolvedCallableSymbol()?.fir as? FirSimpleFunction
|
||||||
is FirQualifiedAccessExpression -> qualifiedAccess.calleeReference.toResolvedPropertySymbol()?.fir?.getter
|
is FirQualifiedAccessExpression -> qualifiedAccess.calleeReference.toResolvedPropertySymbol()?.fir?.getter
|
||||||
|
|||||||
Reference in New Issue
Block a user