Support for multiple origins in irEquals builder
to preserve correct origin when it's called from irNotEquals
This commit is contained in:
@@ -174,16 +174,16 @@ fun IrBuilderWithScope.irEqualsNull(argument: IrExpression) =
|
|||||||
argument, irNull()
|
argument, irNull()
|
||||||
)
|
)
|
||||||
|
|
||||||
fun IrBuilderWithScope.irEquals(arg1: IrExpression, arg2: IrExpression) =
|
fun IrBuilderWithScope.irEquals(arg1: IrExpression, arg2: IrExpression, origin: IrStatementOrigin = IrStatementOrigin.EQEQ) =
|
||||||
primitiveOp2(
|
primitiveOp2(
|
||||||
startOffset, endOffset, context.irBuiltIns.eqeqSymbol, IrStatementOrigin.EQEQ,
|
startOffset, endOffset, context.irBuiltIns.eqeqSymbol, origin,
|
||||||
arg1, arg2
|
arg1, arg2
|
||||||
)
|
)
|
||||||
|
|
||||||
fun IrBuilderWithScope.irNotEquals(arg1: IrExpression, arg2: IrExpression) =
|
fun IrBuilderWithScope.irNotEquals(arg1: IrExpression, arg2: IrExpression) =
|
||||||
primitiveOp1(
|
primitiveOp1(
|
||||||
startOffset, endOffset, context.irBuiltIns.booleanNotSymbol, IrStatementOrigin.EXCLEQ,
|
startOffset, endOffset, context.irBuiltIns.booleanNotSymbol, IrStatementOrigin.EXCLEQ,
|
||||||
irEquals(arg1, arg2)
|
irEquals(arg1, arg2, origin = IrStatementOrigin.EXCLEQ)
|
||||||
)
|
)
|
||||||
|
|
||||||
fun IrBuilderWithScope.irGet(type: IrType, receiver: IrExpression, getterSymbol: IrFunctionSymbol): IrCall =
|
fun IrBuilderWithScope.irGet(type: IrType, receiver: IrExpression, getterSymbol: IrFunctionSymbol): IrCall =
|
||||||
|
|||||||
Reference in New Issue
Block a user