From 4a12ea9bda21957ce1f0035ba040b76228f2e7f1 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Mon, 7 Apr 2014 20:20:37 +0400 Subject: [PATCH] Don't generate bridges in light classes mode --- .../org/jetbrains/jet/codegen/ClassBodyCodegen.java | 2 +- .../src/org/jetbrains/jet/codegen/FunctionCodegen.java | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/ClassBodyCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/ClassBodyCodegen.java index 648b52e0aaf..57822dac2fe 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/ClassBodyCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/ClassBodyCodegen.java @@ -99,7 +99,7 @@ public abstract class ClassBodyCodegen extends MemberCodegen { } } - if (!DescriptorUtils.isTrait(descriptor)) { + if (state.getClassBuilderMode() == ClassBuilderMode.FULL && !DescriptorUtils.isTrait(descriptor)) { for (DeclarationDescriptor memberDescriptor : descriptor.getDefaultType().getMemberScope().getAllDescriptors()) { if (memberDescriptor instanceof FunctionDescriptor) { FunctionDescriptor member = (FunctionDescriptor) memberDescriptor; diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java index e0f1637f0a6..33e3a019158 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java @@ -151,14 +151,14 @@ public class FunctionCodegen extends ParentCodegenAwareImpl { new Label(), methodContextKind ); + return; } - else { - generateMethodBody(mv, functionDescriptor, methodContext, jvmSignature, strategy, getParentCodegen()); - endVisit(mv, null, origin); + generateMethodBody(mv, functionDescriptor, methodContext, jvmSignature, strategy, getParentCodegen()); - methodContext.recordSyntheticAccessorIfNeeded(functionDescriptor, bindingContext); - } + endVisit(mv, null, origin); + + methodContext.recordSyntheticAccessorIfNeeded(functionDescriptor, bindingContext); generateBridges(functionDescriptor); }