For each parameter unused: do not report with explicit parameter

In this case we are duplicating compiler warning.
Related to KT-22068
This commit is contained in:
Mikhail Glukhikh
2018-08-09 14:55:09 +03:00
parent 6048647812
commit af17a4e961
2 changed files with 1 additions and 8 deletions
@@ -34,6 +34,7 @@ class ForEachParameterNotUsedInspection : AbstractKotlinInspection() {
when (it.getCallableDescriptor()?.fqNameOrNull()) {
COLLECTIONS_FOREACH_FQNAME, SEQUENCES_FOREACH_FQNAME -> {
val lambda = it.lambdaArguments.singleOrNull()?.getLambdaExpression() ?: return@callExpressionVisitor
if (lambda.functionLiteral.arrow != null) return@callExpressionVisitor
val descriptor = lambda.analyze()[BindingContext.FUNCTION, lambda.functionLiteral] ?: return@callExpressionVisitor
val iterableParameter = descriptor.valueParameters.singleOrNull() ?: return@callExpressionVisitor
@@ -7,14 +7,6 @@
<problem_class severity="WARNING" attribute_key="WARNING_ATTRIBUTES">Iterated elements are not used in forEach</problem_class>
<description>Loop parameter 'it' is unused</description>
</problem>
<problem>
<file>test.kt</file>
<line>4</line>
<module>light_idea_test_case</module>
<entry_point TYPE="file" FQNAME="temp:///src/test.kt" />
<problem_class severity="WARNING" attribute_key="WARNING_ATTRIBUTES">Iterated elements are not used in forEach</problem_class>
<description>Loop parameter 'item' is unused</description>
</problem>
<problem>
<file>test.kt</file>
<line>7</line>