diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/descriptors/Visibilities.java b/compiler/frontend/src/org/jetbrains/jet/lang/descriptors/Visibilities.java index 624743ac81c..09d878534e2 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/descriptors/Visibilities.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/descriptors/Visibilities.java @@ -48,9 +48,6 @@ public class Visibilities { if (parent == fromParent) { return true; } - if (fromParent instanceof NamespaceDescriptor) { - break; //'private' package members are not visible for subpackages, so when we reach a package, we should stop - } fromParent = fromParent.getContainingDeclaration(); } return false; @@ -77,7 +74,8 @@ public class Visibilities { protected boolean isVisible(@NotNull DeclarationDescriptorWithVisibility what, @NotNull DeclarationDescriptor from) { ModuleDescriptor parentModule = DescriptorUtils.getParentOfType(what, ModuleDescriptor.class, false); ModuleDescriptor fromModule = DescriptorUtils.getParentOfType(from, ModuleDescriptor.class, false); - return parentModule == fromModule; + assert parentModule != null && fromModule != null; + return parentModule.equals(fromModule); } }; diff --git a/compiler/testData/diagnostics/tests/scopes/visibility2.jet b/compiler/testData/diagnostics/tests/scopes/visibility2.jet index 40afa0ee60c..83b063bce2b 100644 --- a/compiler/testData/diagnostics/tests/scopes/visibility2.jet +++ b/compiler/testData/diagnostics/tests/scopes/visibility2.jet @@ -13,7 +13,7 @@ private object PO {} //FILE:b.kt //+JDK -package a.b +package b import a.*