Support default parameter values in @SerialInfo annotations

#KT-46739 Fixed
Fixes https://github.com/Kotlin/kotlinx.serialization/issues/1461
This commit is contained in:
Leonid Startsev
2021-05-20 14:22:34 +03:00
committed by Space
parent f846dd8ea2
commit 229085f3d1
@@ -166,7 +166,8 @@ open class SerializerIrGenerator(
?: error("No constructor args found for SerialInfo annotation Impl class: ${implClass.render()}")
irCall(ctor).apply {
for (i in 0 until annotationCall.valueArgumentsCount) {
putValueArgument(i, annotationCall.getValueArgument(i)!!.deepCopyWithVariables())
val argument = annotationCall.getValueArgument(i) ?: annotationClass.primaryConstructor!!.valueParameters[i].defaultValue?.expression
putValueArgument(i, argument!!.deepCopyWithVariables())
}
}
} else {