Make isHidden and isAssignable explicit on IrValueParameters.
This make native compatible with change to remove default arguments for these in the kotlin repo where they were confused. (cherry picked from commit 706d0d2f618b53fb0d6cce433c65c6523aaf7591)
This commit is contained in:
committed by
Stanislav Erokhin
parent
a41e1cb66b
commit
55bbc35a31
+4
-3
@@ -213,7 +213,8 @@ internal class BuiltInFictitiousFunctionIrClassFactory(
|
||||
SYNTHETIC_OFFSET, SYNTHETIC_OFFSET, invokeFunctionOrigin,
|
||||
IrValueParameterSymbolImpl(it), it.name, it.index,
|
||||
functionClass.typeParameters[it.index].defaultType, null,
|
||||
it.isCrossinline, it.isNoinline, false, false
|
||||
it.isCrossinline, it.isNoinline,
|
||||
isHidden = false, isAssignable = false
|
||||
).also { it.parent = this }
|
||||
}
|
||||
if (!isFakeOverride)
|
||||
@@ -272,8 +273,8 @@ internal class BuiltInFictitiousFunctionIrClassFactory(
|
||||
varargType?.let { toIrType(it) },
|
||||
descriptor.isCrossinline,
|
||||
descriptor.isNoinline,
|
||||
false,
|
||||
false
|
||||
isHidden = false,
|
||||
isAssignable = false
|
||||
).also {
|
||||
it.parent = this
|
||||
}
|
||||
|
||||
+2
-2
@@ -56,8 +56,8 @@ internal fun makeEntryPoint(context: Context): IrFunction {
|
||||
isCrossinline = false,
|
||||
type = context.irBuiltIns.arrayClass.typeWith(context.irBuiltIns.stringType),
|
||||
isNoinline = false,
|
||||
isAssignable = false,
|
||||
isHidden = false
|
||||
isHidden = false,
|
||||
isAssignable = false
|
||||
).apply {
|
||||
it.bind(this)
|
||||
parent = function
|
||||
|
||||
+10
-3
@@ -1142,7 +1142,11 @@ private class ObjCBlockPointerValuePassing(
|
||||
Name.identifier("blockPointer"),
|
||||
0,
|
||||
symbols.nativePtrType,
|
||||
varargElementType = null, isCrossinline = false, isNoinline = false, isHidden = false, isAssignable = false
|
||||
varargElementType = null,
|
||||
isCrossinline = false,
|
||||
isNoinline = false,
|
||||
isHidden = false,
|
||||
isAssignable = false
|
||||
)
|
||||
constructorParameterDescriptor.bind(constructorParameter)
|
||||
constructor.valueParameters += constructorParameter
|
||||
@@ -1187,8 +1191,11 @@ private class ObjCBlockPointerValuePassing(
|
||||
Name.identifier("p$index"),
|
||||
index,
|
||||
functionType.arguments[index].typeOrNull!!,
|
||||
varargElementType = null, isCrossinline = false, isNoinline = false,
|
||||
isHidden = false, isAssignable = false
|
||||
varargElementType = null,
|
||||
isCrossinline = false,
|
||||
isNoinline = false,
|
||||
isHidden = false,
|
||||
isAssignable = false
|
||||
)
|
||||
parameterDescriptor.bind(parameter)
|
||||
parameter.parent = invokeMethod
|
||||
|
||||
+5
-1
@@ -87,7 +87,11 @@ internal class KotlinBridgeBuilder(
|
||||
bridge.startOffset, bridge.endOffset, bridge.origin,
|
||||
IrValueParameterSymbolImpl(descriptor),
|
||||
Name.identifier("p$index"), index, type,
|
||||
null, false, false, false, false
|
||||
null,
|
||||
isCrossinline = false,
|
||||
isNoinline = false,
|
||||
isHidden = false,
|
||||
isAssignable = false
|
||||
).apply {
|
||||
descriptor.bind(this)
|
||||
parent = bridge
|
||||
|
||||
+2
-2
@@ -104,8 +104,8 @@ internal class WorkersBridgesBuilding(val context: Context) : DeclarationContain
|
||||
varargElementType = null,
|
||||
isCrossinline = arg.isCrossinline,
|
||||
isNoinline = arg.isNoinline,
|
||||
isAssignable = arg.isAssignable,
|
||||
isHidden = arg.isHidden
|
||||
isHidden = arg.isHidden,
|
||||
isAssignable = arg.isAssignable
|
||||
).apply { it.bind(this) }
|
||||
}
|
||||
}
|
||||
|
||||
+2
-1
@@ -374,7 +374,8 @@ fun IrValueParameter.copy(newDescriptor: ParameterDescriptor): IrValueParameter
|
||||
return IrValueParameterImpl(
|
||||
startOffset, endOffset, IrDeclarationOrigin.DEFINED, IrValueParameterSymbolImpl(newDescriptor),
|
||||
newDescriptor.name, newDescriptor.indexOrMinusOne, type, varargElementType,
|
||||
newDescriptor.isCrossinline, newDescriptor.isNoinline, false, false
|
||||
newDescriptor.isCrossinline, newDescriptor.isNoinline,
|
||||
isHidden = false, isAssignable = false
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user