Fix asserted cast in IrBuilderWithScope.irReturn

This commit is contained in:
Dmitry Petrov
2018-05-15 10:23:27 +03:00
parent 21dfee4565
commit a57869993d
@@ -22,10 +22,7 @@ import org.jetbrains.kotlin.ir.IrElement
import org.jetbrains.kotlin.ir.declarations.IrVariable
import org.jetbrains.kotlin.ir.expressions.*
import org.jetbrains.kotlin.ir.expressions.impl.*
import org.jetbrains.kotlin.ir.symbols.IrClassifierSymbol
import org.jetbrains.kotlin.ir.symbols.IrFunctionSymbol
import org.jetbrains.kotlin.ir.symbols.IrValueSymbol
import org.jetbrains.kotlin.ir.symbols.IrVariableSymbol
import org.jetbrains.kotlin.ir.symbols.*
import org.jetbrains.kotlin.types.KotlinType
import org.jetbrains.kotlin.utils.addToStdlib.assertedCast
@@ -90,7 +87,7 @@ fun IrBuilderWithScope.irExprBody(value: IrExpression) =
fun IrBuilderWithScope.irReturn(value: IrExpression) =
IrReturnImpl(
startOffset, endOffset, context.builtIns.nothingType,
scope.scopeOwnerSymbol.assertedCast<IrFunctionSymbol> {
scope.scopeOwnerSymbol.assertedCast<IrReturnTargetSymbol> {
"Function scope expected: ${scope.scopeOwner}"
},
value