Clarify Visibility.isVisible contract for null as receiverValue
See comment
This commit is contained in:
+1
-1
@@ -74,7 +74,7 @@ class JavaTypeAccessibilityChecker : AdditionalTypeChecker {
|
||||
if (visitedTypeConstructors.contains(typeConstructor)) return
|
||||
visitedTypeConstructors.add(typeConstructor)
|
||||
|
||||
if (typeConstructor is JavaClassDescriptor && !Visibilities.isVisibleWithIrrelevantReceiver(typeConstructor, scopeOwner)) {
|
||||
if (typeConstructor is JavaClassDescriptor && !Visibilities.isVisibleIgnoringReceiver(typeConstructor, scopeOwner)) {
|
||||
inaccessibleTypes.add(type)
|
||||
}
|
||||
for (typeProjection in type.arguments) {
|
||||
|
||||
+1
-1
@@ -36,7 +36,7 @@ fun syntheticExtensionVisibility(originalDescriptor: DeclarationDescriptorWithVi
|
||||
|
||||
else -> object : Visibility(originalVisibility.name, originalVisibility.isPublicAPI) {
|
||||
override fun isVisible(receiver: ReceiverValue?, what: DeclarationDescriptorWithVisibility, from: DeclarationDescriptor)
|
||||
= originalVisibility.isVisible(receiver, originalDescriptor, from)
|
||||
= originalVisibility.isVisible(Visibilities.ALWAYS_SUITABLE_RECEIVER, originalDescriptor, from)
|
||||
|
||||
override fun mustCheckInImports()
|
||||
= throw UnsupportedOperationException("Should never be called for this visibility")
|
||||
|
||||
Reference in New Issue
Block a user