Don't report about unused parameters on external functions and constructors
This commit is contained in:
@@ -637,7 +637,9 @@ class ControlFlowInformationProvider private constructor(
|
|||||||
is KtPrimaryConstructor -> if (!element.hasValOrVar()) {
|
is KtPrimaryConstructor -> if (!element.hasValOrVar()) {
|
||||||
val containingClass = owner.getContainingClassOrObject()
|
val containingClass = owner.getContainingClassOrObject()
|
||||||
val containingClassDescriptor = trace.get(DECLARATION_TO_DESCRIPTOR, containingClass) as? ClassDescriptor
|
val containingClassDescriptor = trace.get(DECLARATION_TO_DESCRIPTOR, containingClass) as? ClassDescriptor
|
||||||
if (!DescriptorUtils.isAnnotationClass(containingClassDescriptor) && containingClassDescriptor?.isPlatform == false) {
|
if (!DescriptorUtils.isAnnotationClass(containingClassDescriptor) && containingClassDescriptor?.isPlatform == false &&
|
||||||
|
!DescriptorUtils.isEffectivelyExternal(containingClassDescriptor)
|
||||||
|
) {
|
||||||
report(UNUSED_PARAMETER.on(element, variableDescriptor), ctxt)
|
report(UNUSED_PARAMETER.on(element, variableDescriptor), ctxt)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -652,6 +654,7 @@ class ControlFlowInformationProvider private constructor(
|
|||||||
|| functionDescriptor.isOverridableOrOverrides
|
|| functionDescriptor.isOverridableOrOverrides
|
||||||
|| owner.hasModifier(KtTokens.OVERRIDE_KEYWORD)
|
|| owner.hasModifier(KtTokens.OVERRIDE_KEYWORD)
|
||||||
|| functionDescriptor.isPlatform || functionDescriptor.isImpl
|
|| functionDescriptor.isPlatform || functionDescriptor.isImpl
|
||||||
|
|| DescriptorUtils.isEffectivelyExternal(functionDescriptor)
|
||||||
|| OperatorNameConventions.GET_VALUE == functionName
|
|| OperatorNameConventions.GET_VALUE == functionName
|
||||||
|| OperatorNameConventions.SET_VALUE == functionName
|
|| OperatorNameConventions.SET_VALUE == functionName
|
||||||
|| OperatorNameConventions.PROPERTY_DELEGATED == functionName) {
|
|| OperatorNameConventions.PROPERTY_DELEGATED == functionName) {
|
||||||
|
|||||||
Reference in New Issue
Block a user