From b6c63a78237ee71b62fb703f22a7541b0fd09b94 Mon Sep 17 00:00:00 2001 From: Dmitry Petrov Date: Thu, 29 Sep 2016 12:27:53 +0300 Subject: [PATCH] Ignore type aliases in code generation. --- .../org/jetbrains/kotlin/backend/jvm/codegen/ClassCodegen.kt | 3 +++ .../kotlin/backend/jvm/codegen/ExpressionCodegen.kt | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ClassCodegen.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ClassCodegen.kt index e3b1294ed50..0384d1f0b4a 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ClassCodegen.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ClassCodegen.kt @@ -106,6 +106,9 @@ class ClassCodegen private constructor(val irClass: IrClass, val context: JvmBac is IrAnonymousInitializer -> { // skip } + is IrTypeAlias -> { + // skip + } is IrClass -> { ClassCodegen(declaration, context).generate() } diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ExpressionCodegen.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ExpressionCodegen.kt index 336eb70b941..7818786f3de 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ExpressionCodegen.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ExpressionCodegen.kt @@ -27,6 +27,7 @@ import org.jetbrains.kotlin.descriptors.impl.TypeAliasConstructorDescriptor import org.jetbrains.kotlin.ir.IrElement import org.jetbrains.kotlin.ir.declarations.IrClass import org.jetbrains.kotlin.ir.declarations.IrFunction +import org.jetbrains.kotlin.ir.declarations.IrTypeAlias import org.jetbrains.kotlin.ir.declarations.IrVariable import org.jetbrains.kotlin.ir.expressions.* import org.jetbrains.kotlin.ir.util.render @@ -306,6 +307,10 @@ class ExpressionCodegen( return none() } + override fun visitTypeAlias(declaration: IrTypeAlias, data: BlockInfo): StackValue { + return none() + } + override fun visitVararg(expression: IrVararg, data: BlockInfo): StackValue { val size = expression.elements.size mv.iconst(size)