Fix serialization of classes with overrides and default arguments.
This commit is contained in:
+2
-2
@@ -47,6 +47,7 @@ import org.jetbrains.kotlin.metadata.KonanIr.IrConst.ValueCase.*
|
|||||||
import org.jetbrains.kotlin.metadata.KonanIr.IrOperation.OperationCase.*
|
import org.jetbrains.kotlin.metadata.KonanIr.IrOperation.OperationCase.*
|
||||||
import org.jetbrains.kotlin.metadata.KonanIr.IrVarargElement.VarargElementCase.*
|
import org.jetbrains.kotlin.metadata.KonanIr.IrVarargElement.VarargElementCase.*
|
||||||
import org.jetbrains.kotlin.metadata.KonanLinkData
|
import org.jetbrains.kotlin.metadata.KonanLinkData
|
||||||
|
import org.jetbrains.kotlin.resolve.calls.components.hasDefaultValue
|
||||||
import org.jetbrains.kotlin.resolve.descriptorUtil.parents
|
import org.jetbrains.kotlin.resolve.descriptorUtil.parents
|
||||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedClassConstructorDescriptor
|
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedClassConstructorDescriptor
|
||||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedPropertyDescriptor
|
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedPropertyDescriptor
|
||||||
@@ -187,8 +188,7 @@ internal class IrSerializer(val context: Context,
|
|||||||
// Am I observing an IR generation regression?
|
// Am I observing an IR generation regression?
|
||||||
// I see a lack of arg for an empty vararg,
|
// I see a lack of arg for an empty vararg,
|
||||||
// rather than an empty vararg node.
|
// rather than an empty vararg node.
|
||||||
assert(it.varargElementType != null ||
|
assert(it.varargElementType != null || it.hasDefaultValue())
|
||||||
it.declaresDefaultValue())
|
|
||||||
} else {
|
} else {
|
||||||
argOrNull.expression = serializeExpression(actual)
|
argOrNull.expression = serializeExpression(actual)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user