Files
kotlin-fork/analysis/low-level-api-fir/testData/contextCollector/scripts/insideClassBody.copy.txt
T
Ilya Chernikov 9037975758 K2 Scripting: Skip base class params from resolution scope
The base class in scripting considered obsolete and therefore supported
via some ad-hoc mechanisms. In particular parameters to the base class
c-tor are passed via script provided properties. But in combination
with the resolution logic, this leads to issues described in KT-60452
This commits filters out such parameters from script resolution
scope and avoids this problem for now.
Bot it should be noted that proper diagnostics for properties shadowing
should still be implemented - see #KT-65809
#KT-60452 fixed
2024-02-23 22:03:44 +00:00

54 lines
1.9 KiB
Plaintext
Vendored

Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirScriptDeclarationsScope
Classifiers:
FirRegularClassSymbol public final class Foo : R|kotlin/Any|
Element 7
Scope: FirLocalScope
Classifiers:
FirRegularClassSymbol public final class Foo : R|kotlin/Any|
Element 8
Context receivers:
FirScriptSymbol context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
SCRIPT: <script-insideClassBody.kts>
lval args: R|kotlin/Array<kotlin/String>|
public final class Foo : R|kotlin/Any|
Type: kotlin.script.templates.standard.ScriptTemplateWithArgs
Label: <script>
Element 9
Implicit receiver:
FirRegularClassSymbol public final class Foo : R|kotlin/Any|
Type: Foo
Element 10
Scope: FirLocalScope
FILE: [ResolvedTo(IMPORTS)] insideClassBody.kts
context(<script>@kotlin.script.templates.standard.ScriptTemplateWithArgs)
SCRIPT: [ResolvedTo(RAW_FIR)] <script-insideClassBody.kts>
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
public final? [ResolvedTo(RAW_FIR)] class Foo : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] constructor(): R|Foo| {
LAZY_super<R|kotlin/Any|>
}
public? final? [ResolvedTo(RAW_FIR)] val x: <implicit> = LAZY_EXPRESSION
public? [ResolvedTo(RAW_FIR)] get(): <implicit>
public final [ResolvedTo(BODY_RESOLVE)] fun foo(): R|kotlin/Unit| {
}
}