diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/JvmDefaultConstructorLowering.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/JvmDefaultConstructorLowering.kt index 28ffe338470..78963f68ab4 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/JvmDefaultConstructorLowering.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/JvmDefaultConstructorLowering.kt @@ -17,6 +17,7 @@ import org.jetbrains.kotlin.ir.builders.irBlockBody import org.jetbrains.kotlin.ir.builders.irDelegatingConstructorCall import org.jetbrains.kotlin.ir.declarations.IrClass import org.jetbrains.kotlin.ir.util.constructors +import org.jetbrains.kotlin.ir.util.deepCopyWithSymbols import org.jetbrains.kotlin.ir.util.hasDefaultValue internal val jvmDefaultConstructorPhase = makeIrFilePhase( @@ -52,6 +53,7 @@ private class JvmDefaultConstructorLowering(val context: JvmBackendContext) : Cl visibility = primaryConstructor.visibility }.apply { val irBuilder = context.createIrBuilder(this.symbol, startOffset, endOffset) + primaryConstructor.annotations.mapTo(annotations) { it.deepCopyWithSymbols(this) } body = irBuilder.irBlockBody { +irDelegatingConstructorCall(primaryConstructor).apply { passTypeArgumentsFrom(irClass) diff --git a/compiler/testData/compileJavaAgainstKotlin/method/throws/DefaultArgs.kt b/compiler/testData/compileJavaAgainstKotlin/method/throws/DefaultArgs.kt index 14307c502fd..eb3b0e83f53 100644 --- a/compiler/testData/compileJavaAgainstKotlin/method/throws/DefaultArgs.kt +++ b/compiler/testData/compileJavaAgainstKotlin/method/throws/DefaultArgs.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JVM_IR package test class E1: Exception()