PSI2IR flatten more levels of indirection to avoid SOE in big exprs

This commit is contained in:
Dmitry Petrov
2021-06-28 17:09:41 +03:00
parent cd0ea7f7f7
commit 7ccefebf1c
@@ -524,7 +524,11 @@ class OperatorExpressionGenerator(statementGenerator: StatementGenerator) : Stat
if (isDynamicBinaryOperator(expression))
generateDynamicBinaryExpression(expression)
else
generateCall(getResolvedCall(expression)!!, expression, origin)
CallGenerator(statementGenerator)
.generateCall(
expression.startOffsetSkippingComments, expression.endOffset,
statementGenerator.pregenerateCall(getResolvedCall(expression)!!), origin
)
private fun generatePrefixOperatorAsCall(expression: KtPrefixExpression, origin: IrStatementOrigin): IrExpression {
val resolvedCall = getResolvedCall(expression)!!