Restrict conditions for @JvmDefault super calls
Condition was too strict if we actually make super call through super class. Diagnostic is redundant cause there isn't breaking change depending on interface method generation strategy.
This commit is contained in:
+2
-5
@@ -25,11 +25,8 @@ class JvmDefaultSuperCallChecker : CallChecker {
|
||||
val resultingDescriptor = resolvedCall.resultingDescriptor as? CallableMemberDescriptor ?: return
|
||||
if (!resultingDescriptor.hasJvmDefaultAnnotation()) return
|
||||
|
||||
val containingDeclaration = DescriptorUtils.unwrapFakeOverrideToAnyDeclaration(resultingDescriptor).containingDeclaration
|
||||
if (DescriptorUtils.isInterface(containingDeclaration) ||
|
||||
DescriptorUtils.isAnnotationClass(containingDeclaration)
|
||||
) {
|
||||
if (DescriptorUtils.isInterface(resultingDescriptor.containingDeclaration)) {
|
||||
context.trace.report(ErrorsJvm.USAGE_OF_JVM_DEFAULT_THROUGH_SUPER_CALL.on(reportOn))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user