diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirBlackBoxCodegenTestGenerated.java index f25b6ba9232..810b71f61c2 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirBlackBoxCodegenTestGenerated.java @@ -16342,6 +16342,12 @@ public class FirBlackBoxCodegenTestGenerated extends AbstractFirBlackBoxCodegenT runTest("compiler/testData/codegen/box/fir/ConstValAccess.kt"); } + @Test + @TestMetadata("CustomThrowableMessage.kt") + public void testCustomThrowableMessage() throws Exception { + runTest("compiler/testData/codegen/box/fir/CustomThrowableMessage.kt"); + } + @Test @TestMetadata("ExtensionAlias.kt") public void testExtensionAlias() throws Exception { diff --git a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/SignatureEnhancement.kt b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/SignatureEnhancement.kt index 6efae1b479b..98fa71f2cd5 100644 --- a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/SignatureEnhancement.kt +++ b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/SignatureEnhancement.kt @@ -152,6 +152,7 @@ class FirSignatureEnhancement( } else { setterDelegate?.symbol } + if (getterDelegate !is FirJavaMethod && setterDelegate !is FirJavaMethod) return original return buildSyntheticProperty { moduleData = this@FirSignatureEnhancement.moduleData this.name = name diff --git a/compiler/testData/codegen/box/fir/CustomThrowableMessage.kt b/compiler/testData/codegen/box/fir/CustomThrowableMessage.kt new file mode 100644 index 00000000000..eb043c1e4d7 --- /dev/null +++ b/compiler/testData/codegen/box/fir/CustomThrowableMessage.kt @@ -0,0 +1,53 @@ +// TARGET_BACKEND: JVM_IR +// WITH_RUNTIME + +// MODULE: m1 +// FILE: m1/ConfigurationException.java + +package m1; + +public class ConfigurationException extends Exception { + public ConfigurationException(String message) { + super(message); + } + + public String getMessage() { + return super.getMessage(); + } +} + +// MODULE: m2(m1) +// FILE: m2/RuntimeConfigurationException.java + +package m2; +import m1.ConfigurationException; + +public class RuntimeConfigurationException extends ConfigurationException { + public RuntimeConfigurationException(String message) { + super(message); + } +} + +// FILE: m2/RuntimeConfigurationError.java + +package m2; + +public class RuntimeConfigurationError extends RuntimeConfigurationException{ + public RuntimeConfigurationError(String message) { + super(message); + } +} + +// MODULE: m3(m2, m1) +// FILE: m3.kt + +package m3 +import m2.RuntimeConfigurationError + +fun box(): String { + try { + throw RuntimeConfigurationError("OK") + } catch (e: RuntimeConfigurationError) { + return e.message!! + } +} diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java index d1b87a961b9..db1879815ff 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java @@ -16342,6 +16342,12 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes runTest("compiler/testData/codegen/box/fir/ConstValAccess.kt"); } + @Test + @TestMetadata("CustomThrowableMessage.kt") + public void testCustomThrowableMessage() throws Exception { + runTest("compiler/testData/codegen/box/fir/CustomThrowableMessage.kt"); + } + @Test @TestMetadata("ExtensionAlias.kt") public void testExtensionAlias() throws Exception {