From bbaf47d3dbe6e3f147478322a62cfeac1b5710c4 Mon Sep 17 00:00:00 2001 From: Andrey Breslav Date: Thu, 5 Jun 2014 12:57:32 +0400 Subject: [PATCH] Do not initialize properties in LIGHT_CLASSES mode --- .../backend/src/org/jetbrains/jet/codegen/MemberCodegen.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/MemberCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/MemberCodegen.java index 4d0b918d22e..5cbaac87e3d 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/MemberCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/MemberCodegen.java @@ -259,7 +259,9 @@ public abstract class MemberCodegen compileTimeValue = propertyDescriptor.getCompileTimeInitializer(); - if (compileTimeValue == null) return true; + // we must write constant values for fields in light classes, + // because Java's completion for annotation arguments uses this information + if (compileTimeValue == null) return state.getClassBuilderMode() != ClassBuilderMode.LIGHT_CLASSES; //TODO: OPTIMIZATION: don't initialize static final fields