diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java index 7d98bc5e18f..87a6ae8c85b 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java @@ -135,7 +135,7 @@ public class FunctionCodegen { throw new IllegalStateException(); } JetMethodAnnotationWriter aw = JetMethodAnnotationWriter.visitAnnotation(mv); - aw.writeFlags(new BitSet()); + aw.writeFlags(); aw.writeNullableReturnType(functionDescriptor.getReturnType().isNullable()); aw.writeTypeParameters(jvmSignature.getKotlinTypeParameter()); aw.writeReturnType(jvmSignature.getKotlinReturnType()); diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/PropertyCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/PropertyCodegen.java index 2b5663d8b12..f00688c7bb4 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/PropertyCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/PropertyCodegen.java @@ -223,9 +223,7 @@ public class PropertyCodegen { public static void generateJetPropertyAnnotation(MethodVisitor mv, @NotNull String kotlinType, @NotNull String typeParameters) { JetMethodAnnotationWriter aw = JetMethodAnnotationWriter.visitAnnotation(mv); - BitSet flags = new BitSet(); - flags.set(JvmStdlibNames.JET_METHOD_FLAG_PROPERTY_BIT); - aw.writeFlags(flags); + aw.writeFlags(JvmStdlibNames.JET_METHOD_FLAG_PROPERTY_BIT); aw.writeTypeParameters(typeParameters); aw.writePropertyType(kotlinType); aw.visitEnd(); diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/signature/kotlin/JetMethodAnnotationWriter.java b/compiler/backend/src/org/jetbrains/jet/codegen/signature/kotlin/JetMethodAnnotationWriter.java index 82f69f2e0a3..06fd841c61a 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/signature/kotlin/JetMethodAnnotationWriter.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/signature/kotlin/JetMethodAnnotationWriter.java @@ -33,7 +33,15 @@ public class JetMethodAnnotationWriter { this.av = av; } - public void writeFlags(BitSet flags) { + public void writeFlags(int... flagBits) { + BitSet bitSet = new BitSet(); + for (int bit : flagBits) { + bitSet.set(bit); + } + writeFlags(bitSet); + } + + private void writeFlags(BitSet flags) { int flagsValue = 0; for (int bit = 0; bit < flags.length(); bit++) { if (flags.get(bit)) {