[JS IR BE] BridgeConstruction: Fix init order of receivers and type parameters

This commit is contained in:
Svyatoslav Kuzmich
2019-05-09 17:25:12 +03:00
parent 14259ca9e0
commit 0f90aa5f80
7 changed files with 40 additions and 2 deletions
@@ -134,13 +134,12 @@ class BridgesConstruction(val context: JsIrBackendContext) : ClassLoweringPass {
bridge.isSuspend,
origin
).apply {
copyTypeParametersFrom(bridge)
// TODO: should dispatch receiver be copied?
dispatchReceiverParameter = bridge.dispatchReceiverParameter?.run {
IrValueParameterImpl(startOffset, endOffset, origin, descriptor, type, varargElementType).also { it.parent = this@apply }
}
extensionReceiverParameter = bridge.extensionReceiverParameter?.copyTo(this)
copyTypeParametersFrom(bridge)
valueParameters += bridge.valueParameters.map { p -> p.copyTo(this) }
annotations += bridge.annotations
overriddenSymbols.addAll(delegateTo.overriddenSymbols)