[IR] Make isHidden and isAssignable explicit on IrValueParameter.

There were a couple of places where they were confused and
isAssignable was passed as a positional parameter in the position
of isHidden.
This commit is contained in:
Mads Ager
2020-11-27 12:17:59 +01:00
committed by Alexander Udalov
parent 3dbe02b7fe
commit 5d9e86863a
21 changed files with 44 additions and 25 deletions
@@ -144,7 +144,8 @@ fun IrValueParameter.copyTo(
}
return factory.createValueParameter(
startOffset, endOffset, origin, symbol,
name, index, type, varargElementType, isCrossinline, isNoinline, isAssignable = isAssignable
name, index, type, varargElementType, isCrossinline = isCrossinline,
isNoinline = isNoinline, isHidden = false, isAssignable = isAssignable
).also {
descriptor.bind(it)
it.parent = irFunction
@@ -173,7 +174,8 @@ fun IrFunction.copyReceiverParametersFrom(from: IrFunction, substitutionMap: Map
name, index,
type.substitute(substitutionMap),
varargElementType?.substitute(substitutionMap),
isCrossinline, isNoinline
isCrossinline, isNoinline,
isHidden, isAssignable
).also { parameter ->
parameter.parent = this@copyReceiverParametersFrom
newDescriptor.bind(this)
@@ -428,7 +430,9 @@ fun IrFunction.createDispatchReceiverParameter(origin: IrDeclarationOrigin? = nu
parentAsClass.defaultType,
null,
isCrossinline = false,
isNoinline = false
isNoinline = false,
isHidden = false,
isAssignable = false
).apply {
parent = this@createDispatchReceiverParameter
newDescriptor.bind(this)
@@ -211,7 +211,8 @@ fun <D> buildReceiverParameter(
parent.factory.createValueParameter(
startOffset, endOffset, origin,
IrValueParameterSymbolImpl(wrappedDescriptor),
RECEIVER_PARAMETER_NAME, -1, type, null, isCrossinline = false, isNoinline = false, isAssignable = false
RECEIVER_PARAMETER_NAME, -1, type, null, isCrossinline = false, isNoinline = false,
isHidden = false, isAssignable = false
).also {
wrappedDescriptor.bind(it)
it.parent = parent