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 f68e713572a..853d1f6d9d1 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 @@ -17005,6 +17005,12 @@ public class FirBlackBoxCodegenTestGenerated extends AbstractFirBlackBoxCodegenT runTest("compiler/testData/codegen/box/extensionClasses/generics.kt"); } + @Test + @TestMetadata("propertyWithContext.kt") + public void testPropertyWithContext() throws Exception { + runTest("compiler/testData/codegen/box/extensionClasses/propertyWithContext.kt"); + } + @Test @TestMetadata("simple.kt") public void testSimple() throws Exception { diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirTypeResolveTransformer.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirTypeResolveTransformer.kt index 1ca004e0f8d..2706a2c59e9 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirTypeResolveTransformer.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirTypeResolveTransformer.kt @@ -120,6 +120,7 @@ open class FirTypeResolveTransformer( property.transformTypeParameters(this, data) .transformReturnTypeRef(this, data) .transformReceiverTypeRef(this, data) + .transformContextReceivers(this, data) .transformGetter(this, data) .transformSetter(this, data) .transformBackingField(this, data) diff --git a/compiler/testData/codegen/box/extensionClasses/propertyWithContext.kt b/compiler/testData/codegen/box/extensionClasses/propertyWithContext.kt new file mode 100644 index 00000000000..1c2e40be7d1 --- /dev/null +++ b/compiler/testData/codegen/box/extensionClasses/propertyWithContext.kt @@ -0,0 +1,17 @@ +// LANGUAGE: +ContextReceivers +// TARGET_BACKEND: JVM_IR +// ISSUE: KT-53706 + +fun box(): String { + return with(SomeContext()) { + "error".foo + } +} + +class SomeContext { + val value: String = "OK" +} + +context(SomeContext) +val String.foo: String + get() = value 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 bd63262664b..b1b9d8ffe93 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 @@ -17005,6 +17005,12 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes runTest("compiler/testData/codegen/box/extensionClasses/generics.kt"); } + @Test + @TestMetadata("propertyWithContext.kt") + public void testPropertyWithContext() throws Exception { + runTest("compiler/testData/codegen/box/extensionClasses/propertyWithContext.kt"); + } + @Test @TestMetadata("simple.kt") public void testSimple() throws Exception {