mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-21 05:51:25 +07:00
method refs: varargs methods should be checked for parameter numbers (IDEA-133173)
This commit is contained in:
@@ -94,7 +94,7 @@ public class PsiMethodReferenceUtil {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
return !varargs || parameterTypes.length - 1 <= argTypes.length - offset;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
import java.util.stream.Stream;
|
||||
|
||||
class A {
|
||||
private void test5(Integer i, String... strings) {}
|
||||
private void <warning descr="Private method 'test5(java.lang.Integer, java.lang.Integer, java.lang.String...)' is never used">test5</warning>(Integer i, Integer b, String... strings) {
|
||||
System.out.println(i);
|
||||
System.out.println(b);
|
||||
System.out.println(strings);
|
||||
}
|
||||
|
||||
void p(Stream<Integer> stream){
|
||||
stream.forEach(this::test5);
|
||||
}
|
||||
}
|
||||
@@ -330,6 +330,10 @@ public class NewMethodRefHighlightingTest extends LightDaemonAnalyzerTestCase {
|
||||
doTest();
|
||||
}
|
||||
|
||||
public void testVarargsParametersCountComparison() throws Exception {
|
||||
doTest(true);
|
||||
}
|
||||
|
||||
private void doTest() {
|
||||
doTest(false);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user