[LL FIR] LLFirContractsLazyResolver: avoid transformation for functions with implicit type
Legacy (current) contracts can exist only on functions with bodies. This change also should improve memory consumption because we will less frequently calculate bodies. ^KT-55750
This commit is contained in:
committed by
Space Team
parent
3c865bdddd
commit
3e9e66493f
+2
-3
@@ -85,9 +85,7 @@ FILE: [ResolvedTo(IMPORTS)] functionParameterScript.kts
|
||||
SCRIPT: [ResolvedTo(TYPES)] <script-functionParameterScript.kts>
|
||||
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
|
||||
|
||||
public final [ResolvedTo(CONTRACTS)] fun foo([ResolvedTo(CONTRACTS)] param: R|kotlin/Int|): <implicit> {
|
||||
^foo String(boo)
|
||||
}
|
||||
public final [ResolvedTo(CONTRACTS)] fun foo([ResolvedTo(CONTRACTS)] param: R|kotlin/Int|): <implicit> { LAZY_BLOCK }
|
||||
|
||||
|
||||
IMPLICIT_TYPES_BODY_RESOLVE:
|
||||
@@ -132,3 +130,4 @@ FILE: [ResolvedTo(BODY_RESOLVE)] functionParameterScript.kts
|
||||
public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| {
|
||||
^foo String(boo)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user