[FIR] Generate dispatch & extension receivers for variable assignments

This commit is contained in:
Mikhail Glukhikh
2020-04-03 15:14:01 +03:00
parent 774fc32f3e
commit d7460d47de
33 changed files with 9 additions and 28 deletions
@@ -1,4 +1,4 @@
FILE: main.kt
public final fun test(b: R|B|): R|kotlin/Unit| {
R|/B.text| = R|<local>/b|.R|/B.text|.R|kotlin/String.plus|(String())
R|<local>/b|.R|/B.text| = R|<local>/b|.R|/B.text|.R|kotlin/String.plus|(String())
}
@@ -290,6 +290,10 @@ class FirExpressionsResolveTransformer(transformer: FirBodyResolveTransformer) :
source = operatorCall.argument.source
diagnostic = ConeVariableExpectedError()
}
(leftArgument as? FirQualifiedAccess)?.let {
dispatchReceiver = it.dispatchReceiver
extensionReceiver = it.extensionReceiver
}
}
assignment.transform(transformer, ResolutionMode.ContextIndependent)
}