diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java b/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java index e3022b6de9b..844abbb8162 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java @@ -296,6 +296,8 @@ public class JetControlFlowProcessor { if (resultingDescriptor instanceof ReceiverParameterDescriptor) { builder.readThis(expression, (ReceiverParameterDescriptor) resultingDescriptor); } + + copyValue(expression, expression.getInstanceReference()); } @Override diff --git a/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.values b/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.values index 21072d45bf9..1e5f253264f 100644 --- a/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.values +++ b/compiler/testData/cfg/declarations/properties/backingFieldQualifiedWithThis.values @@ -9,6 +9,7 @@ abstract class Bar { fun foo() = "foo" + this.$bar --------------------- "foo" NEW() +this COPY this NEW() $bar NEW() this.$bar COPY