FILE: defaultProperties.kt @R|kotlinx/serialization/Serializable|() public final data class SomeClass : R|kotlin/Any| { public constructor(ctor: R|kotlin/Int| = Int(42), ctorDependent: R|kotlin/Int| = R|/ctor|.R|kotlin/Int.plus|(Int(1))): R|SomeClass| { super() } public final val ctor: R|kotlin/Int| = R|/ctor| public get(): R|kotlin/Int| public final val ctorDependent: R|kotlin/Int| = R|/ctorDependent| public get(): R|kotlin/Int| public final var body: R|kotlin/String| = String() public get(): R|kotlin/String| public set(value: R|kotlin/String|): R|kotlin/Unit| public final var bodyDependent: R|kotlin/Int| = this@R|/SomeClass|.R|/SomeClass.ctor|.R|kotlin/Int.plus|(Int(2)) public get(): R|kotlin/Int| public set(value: R|kotlin/Int|): R|kotlin/Unit| public final operator fun component1(): R|kotlin/Int| public final operator fun component2(): R|kotlin/Int| public final fun copy(ctor: R|kotlin/Int| = this@R|/SomeClass|.R|/SomeClass.ctor|, ctorDependent: R|kotlin/Int| = this@R|/SomeClass|.R|/SomeClass.ctorDependent|): R|SomeClass| public final companion object Companion : R|kotlin/Any| { public final fun serializer(): R|kotlinx/serialization/KSerializer| private constructor(): R|SomeClass.Companion| { super() } } @R|kotlin/Deprecated|(message = String(This synthesized declaration should not be used directly), level = Q|kotlin/DeprecationLevel|.R|kotlin/DeprecationLevel.HIDDEN|) public final object $serializer : R|kotlinx/serialization/internal/GeneratedSerializer| { public final override fun serialize(encoder: R|kotlinx/serialization/encoding/Encoder|, value: R|SomeClass|): R|kotlin/Unit| public final override fun deserialize(decoder: R|kotlinx/serialization/encoding/Decoder|): R|SomeClass| public final val descriptor: R|kotlinx/serialization/descriptors/SerialDescriptor| public get(): R|kotlinx/serialization/descriptors/SerialDescriptor| public final override fun childSerializers(): R|kotlin/Array>| private constructor(): R|SomeClass.$serializer| { super() } } } public final fun test(targetString: R|kotlin/String|): R|kotlin/String| { lval json: R|kotlinx/serialization/json/Json| = R|kotlinx/serialization/json/Json|( = Json@fun R|kotlinx/serialization/json/JsonBuilder|.(): R|kotlin/Unit| { this@R|special/anonymous|.R|kotlinx/serialization/json/JsonBuilder.encodeDefaults| = Boolean(true) } ) lval c: R|SomeClass| = R|/SomeClass.SomeClass|(Int(1)).R|kotlin/apply|( = apply@fun R|SomeClass|.(): R|kotlin/Unit| { this@R|special/anonymous|.R|/SomeClass.body| = String(x) } ) lval s: R|kotlin/String| = R|/json|.R|kotlinx/serialization/json/Json.encodeToString|(Q|SomeClass|.R|/SomeClass.Companion.serializer|(), R|/c|) when () { !=(R|/s|, R|/targetString|) -> { ^test R|/s| } } lval i2: R|SomeClass| = R|/json|.R|kotlinx/serialization/json/Json.decodeFromString|(Q|SomeClass|.R|/SomeClass.Companion.serializer|(), String({})) when () { !=(R|/i2|.R|/SomeClass.ctor|, Int(42)) -> { ^test String(Incorrect default ctor) } } when () { !=(R|/i2|.R|/SomeClass.ctorDependent|, Int(43)) -> { ^test String(Incorrect default ctorDependent) } } when () { !=(R|/i2|.R|/SomeClass.body|, String()) -> { ^test String(Incorrect default body) } } when () { !=(R|/i2|.R|/SomeClass.bodyDependent|, Int(44)) -> { ^test String(Incorrect default bodyDependent) } } ^test String(OK) } public final fun box(): R|kotlin/String| { ^box R|/test|(String({"ctor":1,"ctorDependent":2,"body":"x","bodyDependent":3})) }