7056ad5325
Even though SO may not be correct overrides sometimes, it feels more natural to treat fake overrides as... well, "overrides". And without it we'd need to make the code in `FirOverrideChecker` less intuitive.
186 lines
8.4 KiB
Plaintext
Vendored
186 lines
8.4 KiB
Plaintext
Vendored
STATUS:
|
|
TARGET: public abstract override [ResolvedTo(STATUS)] [SubstitutedOverrideOriginalKey=/AbstractClass.property] val R|kotlin/Int|.property: R|kotlin/Int|
|
|
|
|
|
|
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideScript.kts
|
|
context(<script>@kotlin.script.templates.standard.ScriptTemplateWithArgs)
|
|
SCRIPT: [ResolvedTo(RAW_FIR)] <script-substitutionFakeOverrideScript.kts>
|
|
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
|
|
|
|
public abstract [ResolvedTo(STATUS)] class SubClass : R|AbstractClass<kotlin/Int>| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=SubClass] constructor(): R|SubClass| {
|
|
LAZY_super<R|AbstractClass<kotlin/Int>|>
|
|
}
|
|
|
|
}
|
|
|
|
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>(): R|AbstractClass<T>| {
|
|
LAZY_super<R|kotlin/Any|>
|
|
}
|
|
|
|
public abstract [ResolvedTo(STATUS)] val R|T|.property: R|T|
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T|
|
|
|
|
}
|
|
|
|
|
|
EXPECT_ACTUAL_MATCHING:
|
|
TARGET: public abstract override [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [SubstitutedOverrideOriginalKey=/AbstractClass.property] val R|kotlin/Int|.property: R|kotlin/Int|
|
|
|
|
|
|
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideScript.kts
|
|
context(<script>@kotlin.script.templates.standard.ScriptTemplateWithArgs)
|
|
SCRIPT: [ResolvedTo(RAW_FIR)] <script-substitutionFakeOverrideScript.kts>
|
|
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
|
|
|
|
public abstract [ResolvedTo(STATUS)] class SubClass : R|AbstractClass<kotlin/Int>| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=SubClass] constructor(): R|SubClass| {
|
|
LAZY_super<R|AbstractClass<kotlin/Int>|>
|
|
}
|
|
|
|
}
|
|
|
|
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>(): R|AbstractClass<T>| {
|
|
LAZY_super<R|kotlin/Any|>
|
|
}
|
|
|
|
public abstract [ResolvedTo(EXPECT_ACTUAL_MATCHING)] val R|T|.property: R|T|
|
|
public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): R|T|
|
|
|
|
}
|
|
|
|
|
|
CONTRACTS:
|
|
TARGET: public abstract override [ResolvedTo(CONTRACTS)] [SubstitutedOverrideOriginalKey=/AbstractClass.property] val R|kotlin/Int|.property: R|kotlin/Int|
|
|
|
|
|
|
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideScript.kts
|
|
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
|
|
SCRIPT: [ResolvedTo(TYPES)] <script-substitutionFakeOverrideScript.kts>
|
|
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
|
|
|
|
public abstract [ResolvedTo(STATUS)] class SubClass : R|AbstractClass<kotlin/Int>| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=SubClass] constructor(): R|SubClass| {
|
|
LAZY_super<R|AbstractClass<kotlin/Int>|>
|
|
}
|
|
|
|
}
|
|
|
|
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>(): R|AbstractClass<T>| {
|
|
LAZY_super<R|kotlin/Any|>
|
|
}
|
|
|
|
public abstract [ResolvedTo(CONTRACTS)] val R|T|.property: R|T|
|
|
public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): R|T|
|
|
|
|
}
|
|
|
|
|
|
IMPLICIT_TYPES_BODY_RESOLVE:
|
|
TARGET: public abstract override [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/AbstractClass.property] val R|kotlin/Int|.property: R|kotlin/Int|
|
|
|
|
|
|
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideScript.kts
|
|
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
|
|
SCRIPT: [ResolvedTo(TYPES)] <script-substitutionFakeOverrideScript.kts>
|
|
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
|
|
|
|
public abstract [ResolvedTo(STATUS)] class SubClass : R|AbstractClass<kotlin/Int>| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=SubClass] constructor(): R|SubClass| {
|
|
LAZY_super<R|AbstractClass<kotlin/Int>|>
|
|
}
|
|
|
|
}
|
|
|
|
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>(): R|AbstractClass<T>| {
|
|
LAZY_super<R|kotlin/Any|>
|
|
}
|
|
|
|
public abstract [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val R|T|.property: R|T|
|
|
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T|
|
|
|
|
}
|
|
|
|
|
|
ANNOTATION_ARGUMENTS:
|
|
TARGET: public abstract override [ResolvedTo(ANNOTATION_ARGUMENTS)] [SubstitutedOverrideOriginalKey=/AbstractClass.property] val R|kotlin/Int|.property: R|kotlin/Int|
|
|
|
|
|
|
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideScript.kts
|
|
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
|
|
SCRIPT: [ResolvedTo(TYPES)] <script-substitutionFakeOverrideScript.kts>
|
|
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
|
|
|
|
public abstract [ResolvedTo(STATUS)] class SubClass : R|AbstractClass<kotlin/Int>| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=SubClass] constructor(): R|SubClass| {
|
|
LAZY_super<R|AbstractClass<kotlin/Int>|>
|
|
}
|
|
|
|
}
|
|
|
|
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>(): R|AbstractClass<T>| {
|
|
LAZY_super<R|kotlin/Any|>
|
|
}
|
|
|
|
public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] val R|T|.property: R|T|
|
|
public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T|
|
|
|
|
}
|
|
|
|
|
|
BODY_RESOLVE:
|
|
TARGET: public abstract override [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/AbstractClass.property] val R|kotlin/Int|.property: R|kotlin/Int|
|
|
|
|
|
|
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideScript.kts
|
|
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
|
|
SCRIPT: [ResolvedTo(TYPES)] <script-substitutionFakeOverrideScript.kts>
|
|
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
|
|
|
|
public abstract [ResolvedTo(STATUS)] class SubClass : R|AbstractClass<kotlin/Int>| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=SubClass] constructor(): R|SubClass| {
|
|
LAZY_super<R|AbstractClass<kotlin/Int>|>
|
|
}
|
|
|
|
}
|
|
|
|
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
|
|
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>(): R|AbstractClass<T>| {
|
|
LAZY_super<R|kotlin/Any|>
|
|
}
|
|
|
|
public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] val R|T|.property: R|T|
|
|
public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T|
|
|
|
|
}
|
|
|
|
|
|
FILE RAW TO BODY:
|
|
FILE: [ResolvedTo(BODY_RESOLVE)] substitutionFakeOverrideScript.kts
|
|
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
|
|
SCRIPT: [ResolvedTo(BODY_RESOLVE)] <script-substitutionFakeOverrideScript.kts>
|
|
[ResolvedTo(BODY_RESOLVE)] lval args: R|kotlin/Array<kotlin/String>|
|
|
|
|
public abstract [ResolvedTo(BODY_RESOLVE)] class SubClass : R|AbstractClass<kotlin/Int>| {
|
|
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=SubClass] constructor(): R|SubClass| {
|
|
super<R|AbstractClass<kotlin/Int>|>()
|
|
}
|
|
|
|
}
|
|
|
|
public abstract [ResolvedTo(BODY_RESOLVE)] class AbstractClass<[ResolvedTo(BODY_RESOLVE)] T> : R|kotlin/Any| {
|
|
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(BODY_RESOLVE)] T>(): R|AbstractClass<T>| {
|
|
super<R|kotlin/Any|>()
|
|
}
|
|
|
|
public abstract [ResolvedTo(BODY_RESOLVE)] val R|T|.property: R|T|
|
|
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T|
|
|
|
|
}
|
|
|