From 7920321e3d77024e477c2147d45ba13e86642b68 Mon Sep 17 00:00:00 2001 From: "Pavel V. Talanov" Date: Tue, 27 Aug 2013 15:22:05 +0400 Subject: [PATCH] Do not try to write KotlinPackage annotation if package class is not generated --- .../org/jetbrains/jet/codegen/NamespaceCodegen.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/NamespaceCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/NamespaceCodegen.java index 22ca3c2afde..33129270c67 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/NamespaceCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/NamespaceCodegen.java @@ -102,8 +102,8 @@ public class NamespaceCodegen extends MemberCodegen { public void generate(@NotNull CompilationErrorHandler errorHandler) { List namespaceMembers = new ArrayList(files.size() + 1); - - if (shouldGenerateNSClass(files)) { + boolean shouldGeneratePackageClass = shouldGenerateNSClass(files); + if (shouldGeneratePackageClass) { namespaceMembers.add(v.getClassBuilder().getMemberMap()); } @@ -128,9 +128,12 @@ public class NamespaceCodegen extends MemberCodegen { } } - writeKotlinPackageAnnotationIfNeeded(MemberMap.union(namespaceMembers)); + if (shouldGeneratePackageClass) { + writeKotlinPackageAnnotationIfNeeded(MemberMap.union(namespaceMembers)); + } - assert v.isActivated() == shouldGenerateNSClass(files) : "Different algorithms for generating namespace class and for heuristics"; + assert v.isActivated() == shouldGeneratePackageClass : + "Different algorithms for generating namespace class and for heuristics for: " + name.asString(); } private void writeKotlinPackageAnnotationIfNeeded(@NotNull MemberMap members) {