blob: 70c0c4153923ae8fb795a793c6e1f4b01a38604d [file]
Module: a
FILE: module_a_classWithAllPropertiesConstructor.kt
public final class A : R|kotlin/Any| {
public constructor(s: R|kotlin/String|): R|A| {
super<R|kotlin/Any|>()
}
public final val s: R|kotlin/String| = R|<local>/s|
public get(): R|kotlin/String|
}
public final class B : R|kotlin/Any| {
public constructor(s: R|kotlin/String|): R|B| {
super<R|kotlin/Any|>()
}
public final val s: R|kotlin/String| = R|<local>/s|
public get(): R|kotlin/String|
}
public final class C : R|kotlin/Any| {
public constructor(s: R|kotlin/String|): R|C| {
super<R|kotlin/Any|>()
}
public final val s: R|kotlin/String| = R|<local>/s|
public get(): R|kotlin/String|
}
@R|org/jetbrains/kotlin/plugin/sandbox/AllPropertiesConstructor|() public open class Base : R|kotlin/Any| {
public constructor(): R|Base| {
super<R|kotlin/Any|>()
}
public final val a: R|A| = R|/A.A|(String(a))
public get(): R|A|
public final val b: R|B| = R|/B.B|(String(b))
public get(): R|B|
}
Module: b
FILE: Derived.kt
@R|org/jetbrains/kotlin/plugin/sandbox/AllPropertiesConstructor|() public final class Derived : R|Base| {
public constructor(): R|Derived| {
super<R|Base|>()
}
public final val c: R|C| = R|/C.C|(String(c))
public get(): R|C|
}
FILE: main.kt
public final fun box(): R|kotlin/String| {
lval constructor: R|java/lang/reflect/Constructor<Derived>| = <getClass>(Q|Derived|).R|SubstitutionOverride<kotlin/reflect/KClass.constructors: R|kotlin/collections/Collection<kotlin/reflect/KFunction<Derived>>|>|.R|kotlin/collections/first|<R|kotlin/reflect/KFunction<Derived>|>(<L> = first@fun <anonymous>(it: R|kotlin/reflect/KFunction<Derived>|): R|kotlin/Boolean| <inline=Inline, kind=UNKNOWN> {
^ ==(R|<local>/it|.R|kotlin/reflect/full/valueParameters|.R|SubstitutionOverride<kotlin/collections/List.size: R|kotlin/Int|>|, Int(3))
}
).R|kotlin/reflect/jvm/javaConstructor|<R|Derived|>!!
lval derived: R|Derived!| = R|<local>/constructor|.R|SubstitutionOverride<java/lang/reflect/Constructor.newInstance: R|Derived!|>|(vararg(R|/A.A|(String(a)), R|/B.B|(String(b)), R|/C.C|(String(c))))
R|kotlin/with<CS errors: kotlin/with>#|<R|Derived!|, <ERROR TYPE REF: Cannot infer argument for type parameter R>>(R|<local>/derived|, <L> = with@fun R|Derived!|.<anonymous>(): <ERROR TYPE REF: Cannot infer argument for type parameter R> <inline=Inline, kind=EXACTLY_ONCE> {
^ R|kotlin/with<Inapplicable(INAPPLICABLE): kotlin/with>#|<R|kotlin/String|, <ERROR TYPE REF: Cannot infer argument for type parameter R>>(String(), <L> = with@fun R|kotlin/String|.<anonymous>(): <ERROR TYPE REF: Unresolved name: hasContext> <inline=Inline, kind=EXACTLY_ONCE> {
<Unresolved name: hasExtension>#()
^ <Unresolved name: hasContext>#()
}
)
}
)
^box when () {
!=(R|<local>/derived|, Null(null)) -> {
String(OK)
}
else -> {
String(Error)
}
}
}